Qt Creator 调试器 在 Ubuntu 13.10下 局部变量和表达式(Locals) 无内容

转载 2013年12月06日 10:37:25

今天调试的时候出现了这个问题,搜了一下这篇文章说可以解决这个问题,所以转了过来。

http://www.cnblogs.com/daizhe11/p/3387496.html原文链接。

英文原文要比cnblogs里面多了很多东西,我加了进来,如果还有问题建议去看英文的。

------------------------********************************-------------------

此篇算是一个翻译,万一有国内同样的小白遇到同样问题,方便参考。

原文http://hostilefork.com/2013/10/20/qtcreator-debugger-no-locals-ubuntu/

此bug在Ubuntu 13.10下,Qt Creator的2.7, 2.8版本均存在。简单说,此非gdb问题,而是python版本的不一致导致。

Ubuntu13.10提供的gdb是用python3编译的,而Qt Creator并未为python3做出适配,于是就有了Locals空白的bug。

可以以如下方式验证:

终端,运行gdb, 键入如下:

(gdb) python print sys.version

若是显示 “invalid syntax” error,说明此gdb用的是python3,python3在print中是需要括号的,改为如下:

(gdb) python print (sys.version)

如果得到的是3.x.x,就正对了。Qt Creator显然还没打算支持3.x.x版本。

 解决方法:

自行构建一个基于Python2的GDB

步骤如下:

sudo apt-get install ncurses-dev
sudo apt-get install python-dev
(查看堆栈可能也会有问题,你可能需要通过apt-get install source gdb来更改source.如果你想尝试这个方法,你需要下载下面的两个:sudo apt-get install dpkg-devsudo apt-get install texinfo 
然后设置环境变量MAKEINFO,export MAKEINFO=makeinfo.)

到GDB官网ftp://sourceware.org/pub/gdb/releases/下载源码包,当前最新版 gdb-7.6.1.tar.gz,

解压到用户主目录,cd到此目录下,

./configure –prefix /usr/local/gdb-python2 –with-python
(如果你是通过apt-get获得的源码,那么你输入./configure -with-separate-debug-dir=/usr/lib/debug –prefix /usr/local/gdb-python2)
make
sudo make install

可以运行/usr/local/gdb-python2/bin/gdb, 键入python print sys.version重新测试下版本是否回到了2.x.x。

设置Qt Creator 使用新安装的GDB

直接介绍简便方法了。

先备份文件/usr/bin/gdb,(比如mv /usr/bin/gdb /usr/bin/gdb-python3),然后

sudo ln -s /usr/local/gdb-python2/bin/gdb /usr/bin/gdb

再在Qt Creator里F5,看Locals and Expressions(局部变量和表达式)是不是有显示了。

搞定。

 

注:此bug的表现就是在整个调试过程,下面的窗体一直一片空白:

 


Qt中local and expressions无法查看当前栈变量

前几天在开发过程中发现一个问题,那就是Qt中local and expressions无法查看当前栈变量。在升级到gcc 4.8.1版本之前,debug时在watch window是可以看到变量值得。...
  • petersmart123
  • petersmart123
  • 2017年03月01日 20:47
  • 288

Qt的系统变量

安装QtSDK后, 设置系统变量,假设要用Mingw编译. 在Path里加两个路径C:\QtSDK\mingw\bin;C:\QtSDK\Desktop\Qt\4.8.1\mingw\bin...
  • colddie
  • colddie
  • 2012年09月21日 16:06
  • 530

QtCreator调试设置(CDB调试设置)

在使用qtcreator时整个ide使用感觉还是很不错的,尤其是调试的快捷键和vs是一致的的,但是在windows平台上gdb调试器表现确实不是十分好,所以决定使用 一下微软的调试器,qtcreato...
  • liangjiapei
  • liangjiapei
  • 2016年01月12日 11:12
  • 3699

ubuntu中安装qt不能启动的情况解决方案

错误提示: QXcbConnection: Failed to initialize XRandr Qt: XKEYBOARD extension not present on the X serv...
  • shawncheer
  • shawncheer
  • 2016年08月03日 15:53
  • 3660

Linux_ubuntu安装QT后无法编译无法运行显示'permission denied'的解决办法

今天在ubuntu14.04下安装了QT5.5.1 本来想装5.8.0的,但是官网没找到x86的.run包,到时找到源码了但是编译耗时长我的gcc版本又不对,不想把时间都耗在这上面,于是就下载了支...
  • S_gy_Zetrov
  • S_gy_Zetrov
  • 2017年03月10日 19:00
  • 1117

Qt Creator在Windows上的调试器安装与配置

Qt Creator在Windows上的调试器安装与配置 如果安装Qt时使用的是Visual Studio的预编译版,那么很有可能就会缺少调试器(Debugger),而使用MSVC的Qt对应...
  • z307840528
  • z307840528
  • 2016年05月06日 10:27
  • 2299

Windows下Qt creator调试器的安装与配置

最近正在学习Qt,不过在使用Qt时发现没法进行调试。当我点击调试按钮,就会出现一个错误对话框: Unknown debugger type “No engine” Unable to cre...
  • github_30605157
  • github_30605157
  • 2017年12月03日 17:17
  • 194

Ubuntu下Qt无法加载Help模块的解决办法

小小白原创,求大神指导。不喜勿喷:) 最近因为课设需要写一个C++的小游戏,用到图形界面,所以上手Qt 。跨平台特性没有选择MFC . 进入正题: Ubuntu下安装完成后每次打开...
  • Andy_Frank
  • Andy_Frank
  • 2016年02月09日 13:26
  • 1081

ubuntu下QtCreator启动无响应问题解决

QtCreator正常使用,系统重启后一打开就卡死,无响应状态,重装也没用,查了半天才解决 解决方法:删除系统配置目录下的QtProject文件夹 具体实施: 1、find / -name Qt...
  • senkkes
  • senkkes
  • 2016年10月11日 11:06
  • 1392

linux下Qt Creator不能调试

Qt Creator一启动调试,就出现you can‘t do that without a process  to debug.  在/etc/ld.so.conf.d文件夹中新建...
  • KimHerojae
  • KimHerojae
  • 2015年03月19日 13:35
  • 900
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Qt Creator 调试器 在 Ubuntu 13.10下 局部变量和表达式(Locals) 无内容
举报原因:
原因补充:

(最多只允许输入30个字)