The main debugger settings are associated with the tool chains used to build your project.
To configure tool chains, select Tools > Options > Build and Run > Tool Chains. The view lists the tool chains that Qt Creator detected automatically. You can add tool chains.
You need to set up the debugger only if the automatic setup fails, because the native debugger is missing (as is usually the case for the CDB debugger on Windows, which you always must install yourself) or because the installed version is not supported (e.g. when your system contains no, or an outdated version of GDB and you want to use a locally installed replacement instead).
Note: If you need to change parameters of an automatically detected toolchain, you can Clone the tool chain and change the parameters in the clone. Make sure to select the cloned tool chain in the build settings of your project.
Note: To use the debugging tools for Windows, you must install them and add the Symbol Server provided by Microsoft to the symbol search path of the debugger. For more information, see Setting the Symbol Server in Windows.
Note: To use the Free Software Foundation (FSF) version of GDB on Mac OS, you must sign it and modify your tool chain settings.
This section explains the options you have for debugging C++ code and provides installation notes for the supported native debuggers. It also applies for code in other compiled languages such as C, FORTRAN, Ada.
Qt Creator supports essentially two native debuggers when working with compiled code. On most supported platforms, the GNU Symbolic Debugger GDB can be used. On Microsoft Windows, when using the Microsoft tool chain the Microsoft Console Debugger CDB, is needed. There is also an incomplete experimental interface to LLDB on Mac OS and Linux available when building Qt Creator from source.
GDB comes in two varieties with common roots. One is used on Mac OS X and does not support Python as scripting language; the other one is the version maintained by the Free Software Foundation that can use Python as scripting language since version 7.0
The Python enabled versions are very convenient to interface, and much of Qt Creator's advanced data display options depend on the availability of Python scripting. Since Python enabled versions of GDB are bundled with all recent Linux versions, active support for non-Python builds has been dropped for platforms other than Mac OS X.
The non-Python versions use the compiled version of the debugging helpers, that you must enable separately. For more information, see Debugging Helpers Based on C++.
The Python version uses a script version of the debugging helpers that does not need any special setup.
FSF GDB can also be compiled for Mac OS, but the build is currently unstable, and thererefore, this is not recommended.
The minimal supported version is 7.2. Using GDB version 7.4 is highly recommended with Qt Creator 2.5. For Qt Creator 2.6 the minimal supported version will be raised to GDB 7.4.
The CDB native debugger has similar funtionality to the non-Python GDB debugger engine. Specifically, it also uses compiled C++ code for the debugging helper library.
The following table summarizes the support for debugging C++ code:
| Platform | Compiler | Native Debugger |
|---|---|---|
| Linux | GCC, ICC | GDB |
| Unix | GCC, ICC | GDB |
| Mac OS X | GCC | Apple GDB, FSF GDB (experimental) |
| Windows/MinGW | GCC | GDB |
| Windows/MSVC | Microsoft Visual C++ Compiler | Debugging Tools for Windows/CDB |
| Symbian | GCC | GDB |
| Maemo, MeeGo | GCC | GDB |
For more information on the debugger modes, see Launching the Debugger in Different Modes.
Check the table below for the supported versions and other important information about installing native debuggers.
| Native Debugger | Notes |
|---|---|
| GDB | On Linux and Windows, use the Python-enabled GDB versions that are installed when you install Qt Creator and Qt SDK. On Mac OS X, use the GDB provided with Xcode. For a custom target, you can build your own Python-enabled GDB. Follow the instructions on Building GDB. You must use at least Python version 2.5, but we recommend that you use version 2.6. |
| Debugging tools for Windows | Using this engine requires you to install the Debugging tools for Windows http://www.microsoft.com/whdc/devtools/debugging/installx86.Mspx or http://www.microsoft.com/whdc/devtools/debugging/install64bit.Mspx package (Version 6.12 for the 32-bit or the 64-bit version of Qt Creator, respectively), which are freely available for download from the Microsoft Developer Network. The Qt Creator help browser does not allow you to download files, and therefore, you must copy the above links to a browser. Note: Visual Studio does not include the Debugging tools needed, and therefore, you must install them separately. The pre-built Qt SDK for Windows makes use of the library if it is present on the system. When manually building Qt Creator using the Microsoft Visual C++ Compiler, the build process checks for the required files in "%ProgramFiles%\Debugging Tools for Windows". It is highly recommended that you add the Symbol Server provided by Microsoft to the symbol search path of the debugger. The Symbol Server provides you with debugging informaton for the operating system libraries for debugging Windows applications. For more information, see Setting the Symbol Server in Windows. |
| Debugging tools for Mac OS X | The Qt binary distribution contains both debug and release variants of the libraries. But you have to explicitly tell the runtime linker that you want to use the debug libraries even if your application is compiled as debug, as release is the default library. If you use a qmake based project in Qt Creator, you can set a flag in your run configuration, in Projects mode. In the run configuration, select Use debug version of frameworks. For more detailed information about debugging on the Mac OS X, see: Mac OS X Debugging Magic. You can download an experimental version of FSF GDB that supports Python from ftp://ftp.qt.nokia.com/misc/gdb/7.2/gdb72_mac_platform.tar.bz2. To use FSF GDB on Mac OS, you must sign it and add it to the Qt Creator tool chains. For more information, see Setting up FSF GDB for Mac OS. Note: The Mac OS X Snow Leopard (10.6) has a bug that might cause the application to crash. For a workaround, see: QTBUG-4962. |
To obtain debugging information for the operating system libraries for debugging Windows applications, add the Symbol Server provided by Microsoft to the symbol search path of the debugger:
Use a subfolder in a temporary directory, such as C:\temp\symbolcache.
Note: Populating the cache might take a long time on a slow network connection.
Note: The first time you start debugging by using the Debugging tools for Windows, Qt Creator prompts you to add the Symbol Server.
To use FSF GDB on Mac OS, you must sign it and add it to the Qt Creator tool chains.
codesign -f -s "fsfgdb" $INSTALL_LOCATION/fsfgdb