如何使用cmake调试Qt-Android应用程序构建?

时间:2018-11-12 14:17:53

标签: android qt gdb gdbserver

我想调试使用cmake(而不是qmake)构建的基于Qt的Android应用程序。

androiddeployqt命令捆绑了apk并添加了gdbserver。然后,我可以通过以下方式启动gdb服务器:

adb shell run-as com.package.name /data/data/com.package.name/lib/libgdbserver.so --once :5055 --attach $PID

我也通过adb forward tcp:5055 tcp:5055将端口转发到我的桌面

gdb连接Qt-Creator成功,但似乎缺少某些东西。 没有显示任何符号,显示的线程数不一致。

1 个答案:

答案 0 :(得分:0)

我终于设法使其运行。对于将来的文档,这是我所缺少的: 我需要我的应用程序库以及在调试模式下构建的Qt库。此外,我还需要手机中的可执行文件和库。我通过

获取了它们
adb pull /system/bin  ./
adb pull /system/lib  ./

adb在拉动时会创建子文件夹,这是我的问题之一:所有这些文件都需要存储在一个文件夹中-因此我将它们移动了。

最后,我需要让gdb通过以下方式使用收集的文件

set auto-solib-add on
set solib-search-path /tmp/adb