ubuntu14.04_32位系统下 qt4.8.7 qtcreator无法显示局部变量和表达式

由于老的程序还在ubuntu12.04上编译使用,但是12的源已经很难找,故升级系统到ubuntu14.04  32位。

编译安装Qt4.8.7,安装QtCreator2.8.1配置完成后,发现gdb调试无法显示局部变量和表达式,查找、参照了各种方法,都失败。最后受到几篇关于gcc和gdb版本不兼容的文章的启发(文章:https://www.656463.com/wenda/zubuntu1204swfzqtdsmsxxsblz_430,https://www.thinbug.com/q/19486839),尝试编译了gdb10.2,并在QtCreator中设置,发现完美解决。

注意:

ubuntu14.04 32位

系统初始的gcc  gdb版本为:

gcc version 4.8.4

gdb 7.7.1

 

安装过程:

1、下载gdb源码:

gdb源码下载的路径https://ftp.gnu.org/gnu/gdb/

选择:gdb-10.2.tar.gz

2、编译

tar -zxvf gdb-10.2.tar.gz
cd gdb-10.2/
mkdir build
cd build
../configure
make

注意:需要提前安装好textinfo,否则make出错
sudo apt-get install textinfo

注意不要make install,即暂时不要安装到系统下面。

3、最后qtreator的gdb目录配置/home/jg/tools/gdb-10.2/build/gdb/gdb即可

 

参考:
1、Ubuntu16.04升级gdb7.11升级到10.2版本
https://blog.csdn.net/qq_39153421/article/details/116753735

2、Ubuntu18.04升级gdb10.2
https://blog.csdn.net/EJoft/article/details/123036910

3、https://blog.csdn.net/wubw0585/article/details/88061631

4、https://blog.csdn.net/qq_36490086/article/details/85246107

 

附:

QtCreater调试时提示"ptrace:不允许的操作"的解决方法

1、临时性的解决方法 $ sudo echo 0 > /proc/sys/kernel/yama/ptrace_scope

2、最终方法: $ sudo vi /etc/sysctl.d/10-ptrace.conf

找到下面这一行:(一般在文件最后一行)

kernel.yama.ptrace_scope = 1

修改如下:

kernel.yama.ptrace_scope = 0

最后重启电脑即可。

posted on 2022-07-22 12:31  苦涩的茶  阅读(325)  评论(0编辑  收藏  举报

// 1.生成目录索引列表