## Carbide.c++ Tips & Hints

Hints and tips are sorted by these categories:

- Carbide.c++
- Projects
- Debugging
- Connectivity

### Carbide.c++

##### Is there any help that describes what regular expression syntax support is available?

> Yes there is. In dialogs that support regular expression syntax, like the Find/Replace dialog, simply enable the Regular Expressions option, click in any text box that accepts a regular expression, then press CTRL+Space. A pop-up appears showing you the syntax available for using regular expressions. Holding the pointer over a item in the pop-up opens an additional info dialog of helpful information.

> Also, note the presence of the lightbulb icon next to the active text box. This indicates specific assistance is available for the text box by pressing CTRL+Space. Note that in non-English versions of Microsoft Windows®, the CTRL+Space key binding may be intercepted to open the input method dialog, so try using ALT+/ instead.

##### How can I search for files outside of the workspace?

> Use the System Search feature in Carbide. Click Search > System..., enter the search data, press Search.

##### How can I quickly open a .h file associated from the source file I am currently editing?

> The CDT editor supports quick opening of associated .h files. To view the .h file, select the name of the .h file in the source you are currently editing and press F3 (Open Declaration). A new editor view will appear and display the .h file.

##### I can't locate the eclipse.ini file to modify the behavior of Carbide.c++, where can I find it?

> The eclipse.ini file was renamed the carbide.c++.2.x.ini file to keep the .exe and .ini files in sync.

##### I can't launch Carbide.c++ due to "Error occurred in initialization of VM, could not reserve enough space for object heap?

> By default, the heap space set aside for Carbide is 1024MB. You can see this setting in the carbide.c++.1.x.ini file as the line "-Xmx1024m". Some system may have limited VM space available so we suggest you try lowering the default amount to "-Xmx512m" and relaunching Carbide.

##### When I press F1 in a dialog, the help pane isn't very helpful?

> If the Help pane does not display information specific to the page content, it may be because the page in the dialog doesn't have focus. This often occurs in a wizard page when nothing has been selected on the page. The help system has not been told which help content to display in the About section of the help pane.

> NOTE The Dynamic help section usually displays the proper helpful links, just not as specific as the About section should display.

> To get the proper content to appear, close the help pane, go to the previous page in the wizard by clicking Previous. Now, click Next to advance, select a field in the page to set the focus, then press F1. The correct help content links should now appear.

### Projects

##### Where are project files created and which ones can I safely delete?

> Project files are created in the "Root directory" chosen during bld.inf import on the Project Properties wizard page. If a project has already been created at the same project root you cannot create another project in the same location, you will need to choose another project root.

> When projects are deleted, the project files are not always deleted. If you want to delete these project files they are:

> .project
> .cproject

> You can delete the .settings folder which contains:

> \.settings\.carbide_build_settings
> \.settings\org.eclipse.cdt.core
> \.settings\com.nokia.carbide.cpp.project.core.prefs

##### Saving projects in CVS

> To put a project under CVS control, the project configuration files that reside under the project directory need to be checked into CVS. These include .cproject, .project, application.uidesign (for UI designer applications) and the .settings folder and files (.carbide_build_settings and org.eclipse.cdt.core.prefs). The workspace .metadata folder does not need to be stored in CVS. The necessary metadata will be reconstructed when you check out projects from version control.

##### The Default entry in devices.xml must have a valid EPOCROOT

> The devices.xml file contains a list of all installed SDKs. There are three things Carbide.c++ requires to successfully build a program. They include:

> - Perl 5.6.1 must be installed
> - One of the SDKs is set as the "default" SDK
> - The SDK must have a valid EPOCROOT setting

> In any of the above are missing or incorrect, Carbide.c++ can not build a Symbian OS program.

##### Adding Program Resources

> For resources that are included after creating a project, the user should ensure that the output location is set correctly by viewing the file properties. The output location is set to "{EPOCROOT}\epoc32\include" by default, so if an alternate location is required the user can set this in the file properties.

##### Importing more than one project from the same bld.inf

> You cannot import projects that are part of a BLD.INF file seperately. Carbide projects are the equivilent of a BLD.INF file within the workspace, not an MMP file. To work with two or more MMP projects inside a BLD.INF file, simply import the BLD.INF file as a single project, then build it all or select any of its MMP files to build only that subset of the project.

### Debugging

##### My breakpoints are not getting resolved, what could be causing this?

> If the file you are trying to debug is outside the project then you should import the binary into the project you are currently trying to debug.

##### New debug launch configuration fields not filled in correctly upon creation

> See "Debug icon not visible on executable in Project Explorer view" to correct this issue. Once completed, try to create a debug launch configuration again. Click the New button in the Configuration window to create a new configuration with the correct project information.

##### Debug icon not visible on executable in Project Explorer view

> This is commonly caused when the binary parser is not set correctly in the project. To correct, open the project properties window (right-click project name in Project Explorer view and select Properties), expand the C/C++ Build section and click the Binary Parser tab in the C/C++ Build page. Now look for the PE Windows Parser option. If it's not checkmarked, checkmark it and click Apply. If it is already set then uncheck it and click Apply, then reapply a checkmark and click Apply. The debug icon should now appear.

### Connectivity

##### Unable to connect to device using Bluetooth and debug it using TRK

> When using Bluetooth to connect to a device there are several things that require correction, including:

> - If using built-in Bluetooth under WinXP SP2, ensure the manufacturer’s device drivers are installed and active. The default Microsoft drivers do not work correctly for debugging devices using TRK. For example, if using IBM Integrated Bluetooth on your computer, make sure you have the IBM drivers for the device.
> - Ensure the COM port used by Bluetooth is not commandeered by another process or device.
> - Ensure that you have the latest version of TRK on the target device.