Solved Qt Creator debugging - The values of all composite type variables in "Locals and Expressions" are Not Accessible
-
Since Qt Creator 4.5 I can't view the values of composite types in "Locals and Expressions" while debugging.
QtCreator of version 4.4.1 works fine:
Versions 4.5, 4.6, 4.7:
Specs:
Windows 7, 64bit, Windows 10, 64bit
QT 5.9, QT 5.10.1
MSVC 2015_64This problem appears on two diffrent computers on WIn7 and Win10. The only difference is Qt Creator version.
How to make the “Locals and Expressions” debugging window show the values?
-
Hi @Tetsuzin72,
- have you already tried the last Creator version 4.7.0?
- can you attach the debugger log (Window > Views > Debugger Log)?
Thanks
-
I've tried QtCreator 4.41, 4.5, 4.6 and the last 4.7.
Debugger log for Qtcreator 4.7
wNote: This log contains possibly confidential information about your machine, environment variables, in-memory data of the processes you are debugging, and more. It is never transferred over the internet by Qt Creator, and only stored to disk if you manually use the respective option from the context menu, or through mechanisms that are not under the control of Qt Creator's Debugger plugin, for instance in swap files, or other plugins you might use. wYou may be asked to share the contents of this log when reporting bugs related to debugger operation. In this case, make sure your submission does not contain data you do not want to or you are not allowed to share. w sStarting debugger "CdbEngine" for ABI "x86-windows-msvc2015-pe-64bit"... dStart parameters: 'TestNasledovanie' mode: 1 dABI: x86-windows-msvc2015-pe-64bit dLanguages: c++ dExecutable: C:\GS.Repos\Work\Test\build-TestNasledovanie-Desktop_Qt_5_10_1_MSVC2015_64bit-Debug\debug\TestNasledovanie dDirectory: C:\GS.Repos\Work\Test\build-TestNasledovanie-Desktop_Qt_5_10_1_MSVC2015_64bit-Debug dDebugger: C:\Program Files\Debugging Tools for Windows (x64)\cdb.exe dProject: C:\GS.Repos\Work\Test\TestNasledovanie dAdditional Search Directories: dSysroot: dDebug Source Location: dDebugger settings: dAdditionalArguments: (default: ) dAdjustBreakpointLocations: true (default: true) dAllPluginBreakpoints: true (default: true) dAlwaysAdjustColumnWidths: true (default: true) dAutoDerefPointers: true (default: true) dAutoEnrichParameters: true (default: true) dAutoQuit: false (default: false) dBreakEvent: (default: ) dBreakOnAbort: false (default: false) dBreakOnCatch: false (default: false) dBreakOnCrtDbgReport: false (default: false) dBreakOnFatal: false (default: false) dBreakOnThrow: false (default: false) dBreakOnWarning: false (default: false) dBreakpointCorrection: true (default: true) dBreakpointsFullPath: false (default: false) dCDB_Console: false (default: false) dCloseBuffersOnExit: false (default: false) dCloseMemoryBuffersOnExit: true (default: true) dDisplayStringLimit: 100 (default: 100) dEnableReverseDebugging: false (default: false) dExtraDumperFile: (default: ) dFontSizeFollowsEditor: false (default: false) dGdbCustomDumperCommands: (default: ) dGdbPostAttachCommands: (default: ) dGdbStartupCommands: (default: ) dIdentifyDebugInfoPackages: false (default: false) dIgnoreFirstChanceAccessViolation: false (default: false) dIntelFlavor: false (default: false) dLoadGdbDumpers2: false (default: false) dLoadGdbInit: true (default: true) dLogTimeStamps: false (default: false) dMaximalStackDepth: 20 (default: 20) dMaximalStringLength: 10000 (default: 10000) dMultiInferior: false (default: false) dNoPluginBreakpoints: false (default: false) dQmlInspector.ShowAppOnTop: false (default: false) dRaiseOnInterrupt: true (default: true) dRegisterForPostMortem: false (default: false) dSelectedPluginBreakpoints: false (default: false) dSelectedPluginBreakpointsPattern: .* (default: .*) dShowQObjectNames2: true (default: true) dShowQmlObjectTree: true (default: true) dShowQtNamespace: true (default: true) dShowStandardNamespace: true (default: true) dShowThreadNames: false (default: false) dSkipKnownFrames: false (default: false) dSortStructMembers: true (default: true) dSourcePaths: (default: ) dStationaryEditorWhileStepping: false (default: false) dSwitchModeOnExit: false (default: false) dSymbolPaths: (default: ) dTargetAsync: false (default: false) dUseAddressInBreakpointsView: false (default: false) dUseAddressInStackView: false (default: false) dUseAlternatingRowColours: false (default: false) dUseCodeModel: true (default: true) dUseDebuggingHelper: true (default: true) dUseDynamicType: true (default: true) dUseMessageBoxForSignals: true (default: true) dUsePythonDumper: true (default: true) dUseToolTips: true (default: true) dUseToolTipsInBreakpointsView: false (default: false) dUseToolTipsInLocalsView: false (default: false) dUseToolTipsInStackView: true (default: true) dWarnOnReleaseBuilds: true (default: true) dWatchdogTimeout: 20 (default: 20) dState changed from DebuggerNotReady(0) to EngineSetupRequested(1) [master] dCALL: SETUP ENGINE Launching C:\Program Files\Debugging Tools for Windows (x64)\cdb.exe -aqtcreatorcdbext.dll -lines -G -c .idle_cmd !qtcreatorcdbext.idle -y "" C:\GS.Repos\Work\Test\build-TestNasledovanie-Desktop_Qt_5_10_1_MSVC2015_64bit-Debug\debug\TestNasledovanie using C:\Qt\qtcreator-4.7.0\lib\qtcreatorcdbext64\qtcreatorcdbext.dll of 17.07.2018 7:18. C:\Program Files\Debugging Tools for Windows (x64)\cdb.exe running as 6936 Microsoft (R) Windows Debugger Version 6.11.0001.404 AMD64 Using codemodel based breakpoint correction. Copyright (c) Microsoft Corporation. All rights reserved. CommandLine: C:\GS.Repos\Work\Test\build-TestNasledovanie-Desktop_Qt_5_10_1_MSVC2015_64bit-Debug\debug\TestNasledovanie WARNING: Inaccessible path: '""' Symbol search path is: "" Executable search path is: sModule loaded: TestNasledovanie.exe sModule loaded: ntdll.dll sModule loaded: C:\Windows\System32\KERNEL32.DLL WARNING: System version is 6.2 but kernel32.dll is version 10.0. sModule loaded: C:\Windows\System32\KERNELBASE.dll sModule loaded: C:\Windows\System32\SHELL32.dll sModule loaded: C:\Windows\System32\msvcrt.dll sModule loaded: C:\Windows\System32\cfgmgr32.dll sModule loaded: C:\Windows\System32\ucrtbase.dll sModule loaded: C:\Windows\System32\shcore.dll sModule loaded: C:\Windows\System32\RPCRT4.dll sModule loaded: C:\Windows\System32\combase.dll sModule loaded: C:\Windows\System32\bcryptPrimitives.dll sModule loaded: C:\Windows\System32\windows.storage.dll sModule loaded: C:\Windows\System32\advapi32.dll sModule loaded: C:\Windows\System32\sechost.dll sModule loaded: C:\Qt\Qt5.10.1\5.10.1\msvc2015_64\bin\Qt5Cored.dll sModule loaded: C:\Windows\System32\shlwapi.dll sModule loaded: C:\Windows\System32\GDI32.dll sModule loaded: C:\Windows\System32\gdi32full.dll sModule loaded: C:\Windows\System32\WS2_32.dll sModule loaded: C:\Windows\System32\msvcp_win.dll sModule loaded: C:\Windows\System32\USER32.dll sModule loaded: C:\Windows\System32\USER32.dll sModule loaded: C:\Windows\System32\win32u.dll sModule loaded: C:\Windows\System32\win32u.dll sModule loaded: C:\Windows\System32\kernel.appcore.dll sModule loaded: C:\Windows\System32\powrprof.dll sModule loaded: C:\Windows\System32\ole32.dll sModule loaded: C:\Windows\System32\profapi.dll sModule loaded: C:\Windows\SYSTEM32\VCRUNTIME140D.dll sModule loaded: C:\Windows\SYSTEM32\ucrtbased.dll sModule loaded: C:\Windows\SYSTEM32\MPR.dll sModule loaded: C:\Windows\SYSTEM32\VERSION.dll sModule loaded: C:\Windows\SYSTEM32\NETAPI32.dll sModule loaded: C:\Windows\SYSTEM32\USERENV.dll sModule loaded: C:\Windows\SYSTEM32\WINMM.dll sModule loaded: C:\Windows\SYSTEM32\MSVCP140D.dll sModule loaded: C:\Windows\SYSTEM32\winmmbase.dll sModule loaded: C:\Windows\SYSTEM32\winmmbase.dll sModule loaded: C:\Windows\SYSTEM32\WINMMBASE.dll sModule loaded: C:\Windows\SYSTEM32\NETUTILS.DLL sModule loaded: C:\Windows\SYSTEM32\SRVCLI.DLL sModule loaded: C:\Windows\SYSTEM32\CRYPTBASE.DLL (2080.454): Break instruction exception - code 80000003 (first chance) *** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll - ntdll!LdrInitShimEngineDynamic+0x34c: 00007ffc`444a2e1c cc int 3 cdb: Reading initial command '.idle_cmd !qtcreatorcdbext.idle' Execute when idle: !qtcreatorcdbext.idle 0:000> <l+t <l+s <bu100100 `TestNasledovanie!C:\GS.Repos\Work\Test\TestNasledovanie\main.cpp:24` <!qtcreatorcdbext.breakpoints -v <.symopt+0x8000 <sxn 0x4000001f <sxn ibp <.asm source_line <!qtcreatorcdbext.setparameter maxStringLength=10000 maxStackDepth=20 <!qtcreatorcdbext.script print(sys.version) <!qtcreatorcdbext.pid Source options are 1: 1/t - Step/trace by source line Source options are 5: 1/t - Step/trace by source line 4/s - List source code at prompt *** WARNING: Unable to verify checksum for TestNasledovanie.exe d*** WARNING: Unable to verify checksum for TestNasledovanie.exe Obtained breakpoint 0xfbb58fa6f0 (#1), at 0x7ff7893015ea, module: 'TestNasledovanie' All breakpoints have been resolved. Symbol options are 0xB8237: 0x00000001 - SYMOPT_CASE_INSENSITIVE 0x00000002 - SYMOPT_UNDNAME 0x00000004 - SYMOPT_DEFERRED_LOADS 0x00000010 - SYMOPT_LOAD_LINES 0x00000020 - SYMOPT_OMAP_FIND_NEAREST 0x00000200 - SYMOPT_FAIL_CRITICAL_ERRORS 0x00008000 - SYMOPT_NO_PUBLICS 0x00010000 - SYMOPT_AUTO_PUBLICS 0x00020000 - SYMOPT_NO_IMAGE_SEARCH 0x00080000 - SYMOPT_NO_PROMPTS Assembly options: source_line 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] <!qtcreatorcdbext.script sys.path.insert(1, 'C:\\Qt\\qtcreator-4.7.0\\share\\qtcreator\\debugger') <!qtcreatorcdbext.script from cdbbridge import Dumper <!qtcreatorcdbext.script print(dir()) <!qtcreatorcdbext.script theDumper = Dumper() <!qtcreatorcdbext.script theDumper.loadDumpers(None) Qt Creator CDB extension version 4.3 64 bit. dTaking notice of pid 8320 dNOTE: ENGINE SETUP OK dState changed from EngineSetupRequested(1) to EngineSetupOk(3) [master] dState changed from EngineSetupOk(3) to EngineRunRequested(4) [master] dCALL: RUN ENGINE <g ['Dumper', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__', 'cdbext', 'sys'] dNOTE: ENGINE RUN AND INFERIOR RUN OK sRunning. dState changed from EngineRunRequested(4) to InferiorRunOk(8) [master] sModule loaded: C:\Windows\System32\IMM32.DLL Breakpoint 100100 hit *** WARNING: Unable to verify checksum for TestNasledovanie.exe > 24: qDebug() << list[0].val1; TestNasledovanie!main+0x8a: 2400007ff7`893015ea 33d2 xor edx,edx *** ERROR: Symbol file could not be found. Defaulted to export symbols for ntdll.dll - *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\System32\KERNEL32.DLL - sStopped at breakpoint 1 (1) in thread 0. dNOTE: INFERIOR SPONTANEOUS STOP sStopped. dState changed from InferiorRunOk(8) to InferiorStopOk(11) [master] Checking for wow64 subsystem... <lm m wow64 start end module name <.frame 0x0 <!qtcreatorcdbext.script theDumper.fetchVariables({"autoderef":1,"context":"","displaystringlimit":"100","dyntype":1,"expanded":["return","inspect","watch","local"],"fancy":1,"formats":{},"nativemixed":0,"partialvar":"","passexceptions":0,"qobjectnames":1,"stringcutoff":"10000","typeformats":{},"uninitialized":[],"watchers":[]}) 00 0000008d`4871f9a0 00007ff7`89304c4d TestNasledovanie!main+0x8a [c:\gs.repos\work\test\testnasledovanie\main.cpp @ 24] *** WARNING: Unable to verify checksum for C:\Qt\Qt5.10.1\5.10.1\msvc2015_64\bin\Qt5Cored.dll *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Qt\Qt5.10.1\5.10.1\msvc2015_64\bin\Qt5Cored.dll - ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!QObject::customEvent *** *** *** ************************************************************************* Type information missing error for QObject::customEvent ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!QObject::customEvent *** *** *** ************************************************************************* Type information missing error for QObject::customEvent ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!QObject::customEvent *** *** *** ************************************************************************* Type information missing error for QObject::customEvent ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!QObject::customEvent *** *** *** ************************************************************************* Type information missing error for QObject::customEvent ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!qtHookData *** *** *** ************************************************************************* Type information missing error for qtHookData ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!qtHookData *** *** *** ************************************************************************* Type information missing error for qtHookData ************************************************************************* *** *** *** *** *** Your debugger is not using the correct symbols *** *** *** *** In order for this command to work properly, your symbol path *** *** must point to .pdb files that have full type information. *** *** *** *** Certain .pdb files (such as the public OS symbols) do not *** *** contain the required information. Contact the group that *** *** provided you with these symbols if you need this command to *** *** work. *** *** *** *** Type referenced: Qt5Cored!qtHookData *** *** *** ************************************************************************* Type information missing error for qtHookData result={data=[{iname="local.argc",name="argc",address="0x8d4871fa40",numchild="0",type="int",value="1"},{iname="local.argv",name="argv",numchild="1",type="char **",valueencoded="itemcount",value="1"},{iname="local.list",name="list",numchild="0",type="QList<Class1>",valueencoded="notaccessible",value=""}],partial="0",timings=[]} <Rebuild Watchmodel 1 @ 15:22:43.252 > sFinished retrieving data dQUIT DEBUGGER REQUESTED IN STATE 11 dState changed from InferiorStopOk(11) to InferiorShutdownRequested(13) [master] dCALL: SHUTDOWN INFERIOR dINFERIOR FINISHED SHUT DOWN dState changed from InferiorShutdownRequested(13) to InferiorShutdownFinished(14) [master] dState changed from InferiorShutdownFinished(14) to EngineShutdownRequested(15) [master] dCALL: SHUTDOWN ENGINE <q dCDB PROCESS FINISHED, status 0, exit code 0 dNOTE: ENGINE SHUTDOWN FINISHED dState changed from EngineShutdownRequested(15) to EngineShutdownFinished(16) [master] dState changed from EngineShutdownFinished(16) to DebuggerFinished(17) [master] sDebugger finished.
-
Hi @Tetsuzin72,
thanks for the information - I've completely overseen the 4.7 on top of your second picture...
In the log, I see the following:
{iname="local.list",name="list",numchild="0",type="QList<Class1>",valueencoded="notaccessible",value=""}]*
so indeed something goes wrong here.
Can you prepare a minimal compile- and debuggable example and create a report at bugreports.qt.io ? That is the fastest way to get this fixed.
Thanks
PS: please add the link to the bugreport here so we can follow it.
-
Thank you, @aha_1980.
Bug report: https://bugreports.qt.io/browse/QTCREATORBUG-20844 -
Reference to QTBUG-67587 really helped me. I’ve downloaded the “Debug symbols for Windows users” 7zip file und unzip it to Qt bin directory. And now QC of version 4.7.0 works too. But I still do not understand why QC4.4 works without PDB files?
-
There are PDB files in my Qt folder,but QTC4.7 still can not show local variables correctly.
-
Hi everyone,
I faced the same issue (Windows 10 64 bit, Qt5.11.1, MSVC 2017_64 and QTC 4.6.2) and managed to solve it by simply disabling the use of Python dumper (Tools > Options > Debugger > CDB Tab > Use Python dumper).
No idea though how this is related to the mentioned issue. -
@Benjamin07-0 Thanks, it's best solution.
-
This post is deleted! -
I had the same issue after playing with the Project settings. I didn't even see basic type variables like double and int.
The issue was my qmake build configuration was set to release instead of debug under Projects/Build settings/Build Steps/Qmake (details...)