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

最後重啓電腦即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章