aboutsummaryrefslogtreecommitdiffstats
path: root/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc
diff options
context:
space:
mode:
authorLeena Miettinen <riitta-leena.miettinen@qt.io>2022-10-25 16:37:48 +0200
committerLeena Miettinen <riitta-leena.miettinen@qt.io>2022-11-08 08:32:28 +0000
commitf57ec09ee8c5972d5cb04671d4537335f201b1d3 (patch)
treee23c2f24ce3aabd87b205d4113ee0c77db216849 /doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc
parent65cfbc1b6e25225934341daaf17c2da78e1d0a31 (diff)
Doc: Add debugger troubleshooting information
From https://wiki.qt.io/Qt_Creator_Windows_Debugging Task-number: QTCREATORBUG-27876 Change-Id: I36b19311387a93f729aea1bbc28db125e1d1230c Reviewed-by: Cristian Adam <cristian.adam@qt.io> Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc')
-rw-r--r--doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc45
1 files changed, 41 insertions, 4 deletions
diff --git a/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc b/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc
index 8f92978905..e6c4ae95fb 100644
--- a/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc
+++ b/doc/qtcreator/src/debugger/creator-only/creator-debugger.qdoc
@@ -1504,8 +1504,12 @@
\li Make sure you use at least \QC 3.0.1
- \li Make sure the debugger is set up properly. For more information,
- see \l{Setting Up Debugger}.
+ \li Select the \inlineimage icons/run_small.png
+ (\uicontrol Run) button to verify that the
+ \l {Running on Multiple Platforms}{build and run kit selector}
+ picked a runnable target and you can run the application.
+
+ \li Make sure the debugger is \l{Setting Up Debugger}{set up properly}.
\li In the \uicontrol Debug mode, select \uicontrol View >
\uicontrol Views > \uicontrol {Debugger Log} to open the
@@ -1516,6 +1520,8 @@
\l{Pasting and Fetching Code Snippets}{code pasting service} before
asking questions in the IRC (on the #qt-creator channel at Libera.Chat).
+ \note Error 135 usually means that a dependent DLL cannot be found.
+
\endlist
\section1 Pointer Variable Members Are Not Displayed Directly
@@ -1526,6 +1532,9 @@
select \uicontrol {Dereference Pointers Automatically} in the context
menu in the \uicontrol Locals and \uicontrol Expressions views.
+ If you cannot view variables at all, check that you selected a \e debug build
+ configuration.
+
\section1 Structure Members Are Not Sorted According to Structure Layout
By default, structure members are displayed in alphabetic order. To inspect
@@ -1536,7 +1545,9 @@
\section1 Built-in Debugger Is Slow During Startup and Runtime
Slowness that is related to the loading of debug information is hard to
- avoid.
+ avoid. The following sections describe some possible solutions.
+
+ \section2 Caching GDB Symbol Index
When using GDB as backend, you can automatically save a copy of
its symbol index in a cache on disk and retrieve it from there
@@ -1546,12 +1557,38 @@
\image qtcreator-gdb-options.png "GDB preferences"
- Some slowness stems from maintaining breakpoints inside
+ \section2 Minimizing Number of Breakpoints
+
+ Some debugging slowness stems from maintaining breakpoints inside
the debugger (under some circumstances all breakpoints need to be inserted
and removed again for each step) and the evaluation of expressions after
each step. We recommend that you minimize the number of breakpoints and
watched expressions.
+ \section2 Cleaning Builds
+
+ If out-of-date .pdb files make debugging slower, try a clean build.
+
+ \section2 Disabling Incremental Linking
+
+ Incremental linking can affect debugging. If the debugger log contains
+ the \e {Unable to verify checksum of module} message, disable incremental
+ linking.
+
+ When using CMake as the build system, add the following line to the project
+ CMakeLists.txt file:
+
+ \badcode
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /INCREMENTAL:NO" )
+ \endcode
+
+ When using qmake as the build system, add the following line to the project
+ .pro file:
+
+ \badcode
+ QMAKE_LFLAGS_DEBUG += /INCREMENTAL:NO
+ \endcode
+
\section1 Debugger Cannot Attach to Running Process on Linux
GDB uses \c ptrace to attach to running processes. Some Linux distributions