Qt Creator "Debugger Locals and Expressions" values marked as <not accessible>
-
Hi everyone,
This problem seems to be the subject of many other threads, but none of the provided solutions are appropriate for me.
When I step through the code using Qt Creator, the local variables of all Qt defined types are shown as <not accessible> in the "Locals and Expressions" panel. (Other compound types as std::string are concerned too.)
I tried the following:
- Changing the local display format. Although this gets rid of the <not accessible> message, it does not solve my problem as it can't even reveal the content of a QString.
- Unticking the "Load system GDB pretty printers" option. This seemed to help people using Qt Creator prior to version 3.1. It's not my case, and it didn't changed anything to the displayed content.
I run the following setup:
- CentOS Linux 6.5, 64 bits (GCC 4.4.7, GDB 7.2)
- Qt 5.3.1
- Qt Creator 3.1.2
- Both Qt and Creator were built from source according to the recommended procedure
- Tested with qmake and cmake projects
Note: I can't upgrade to Qt Creator 3.2, since it doesn't support GCC 4.4 anymore. :(
Thank you for your input!
-
Thank you. I didn't know that.
For others in this situation, this information is available in "qt-creator docs":http://qt-project.org/doc/qtcreator-3.0/creator-debugger-engines.html
Although it works in Qt Creator 2.8, it seems to have the same requirements as 3.0, as stated by this "documentation page":http://qt-project.org/doc/qtcreator-2.8/creator-debugger-engines.html...
-
Hi again,
it seems that to use the debugger features in Qt Creator 3.1.2 on my setup, it's not only the GDB version which is a problem.
I compiled and used a fresh GDB 7.8.1 (with my native GCC 4.4.7), and I still have the "<not accessible>" problem in "Locals and Expressions".
The GDB 7.8.1 debugger is working properly under Qt Creator 2.8.1.
I know I'm stubborn with this issue, but I'm stuck in a corporate environment, where I cannot use anything else but CentOS 6.6.
Does somebody have an idea how to fix this issue?
Now, I run the following setup:
- CentOS Linux 6.6, 64 bits (GCC 4.4.7, GDB 7.8.1)
- Qt 5.3.2
- Qt Creator 3.1.2
- Both Qt and Creator were built from source according to the recommended procedure
-
Hi.
If the problem is present in a supported version (and it looks like it is), please file a bug report at bugreports.qt-project.org and attach the full debugger log there (contents of right pane of Windows->Views->Debugger Log), at a time when you are seeing the <not accessible>.
Before copying the log content please also click once on the button left to the "Command:" label in the lower left corener of the Windows->Views->Debugger Log view.
-
Thank you. I didn't know about this Debugger Log View. It shows Python errors when I click on the suggested button.
I though my version of GDB to be too recent, so I tried with v7.4.1 and I got the same results...
Meanwhile I've found that Qt Creator 3.1.2 "known issues" documentation page mentions:
bq.
When debugging executables created by the GNU Compiler version 4.5.0 (all platforms), some data types will not be displayed in the Locals and Expressions view due to missing debug information.This could also apply to GCC 4.4.7, who knows!?...
I created this QTCREATORBUG-13462. Hoping it won't get flagged as invalid :)
-
The problem can be solved building GDB with a Python 2.7 or 3 in path. Python 2.6 from Centos 6.X lacks some feature which breaks the debugger integration for Qt Creator 3.1.2.
Python 2.6 could also break the debugger pretty printers for Qt Creator > 2.8.1 and < 3.2, but I haven't tested any other version than 2.8.1 and 3.1.2.
More info in can be found in QTCREATORBUG-13462.
-
The problem can be solved building GDB with a Python 2.7 or 3 in path. Python 2.6 from Centos 6.X lacks some feature which breaks the debugger integration for Qt Creator 3.1.2.
Python 2.6 could also break the debugger pretty printers for Qt Creator > 2.8.1 and < 3.2, but I haven't tested any other version than 2.8.1 and 3.1.2.
More info in can be found in QTCREATORBUG-13462.