在arm-centos7上使用qtcreator 调用gdb debug出错,重编python和gdb

起初是在arm机器上,qtcreator-4.12.4无法调度用gdb进行debug,现象是点击debug->Start Debugging->Start Debugging Without Deployment后,状态栏出现红色的进度条,然后启动qtcreator的terminal出现以下错误

起初是在arm机器上,qtcreator-4.12.4无法调度用gdb进行debug,现象是点击debug->Start Debugging->Start Debugging Without Deployment后,状态栏出现红色的进度条,然后启动qtcreator的terminal出现以下错误

经查资料,可能是python版本问题,因此用gcc9.3重编了一个python3.6,仍旧是有问题

继续使用qtcreator进行debug,发现qtcreator中debug栏->view->global debugger log有log提示,python某个.so文件缺少PyFloat_Type的Symbol定义

强制修改Python路径后发现gdb仍然找这个动态库,怀疑是编译gdb时指定了Python版本,于是重新编译python-3.8.8并使用python-3.8.8重新编译gdb-9.2

*编译python时要使用–enable-shared选项, 使得动态库可以使用;使用这个 参数编译后的python,需要将lib添加到LD_LIBRARY_PATH才能使用,否则找不到python.so

*注意 configure –help中没有python的选项,要使用–with-python=/path/to/python

使用python-3.8.8在arm上重新编译gdb-9.2有问题,编不过,具体参考《在arm上编译gdb(with python)出错的解决办法》

编完后就可以用了

此外,qtcreator调用gdb的方法大概是通过自己的gdbbridge模块调用gdb的python模块,进而控制和获取gdb的输出,然后给自己用

0 0 投票数
文章评分
订阅评论
提醒
guest
0 评论
内联反馈
查看所有评论