繁体   English   中英

无法将GDB附加到Eclipse CDT的进程中

[英]Unable to attach GDB to process from Eclipse CDT

我正在使用Eclipse CDT在Mac OS X上构建一个插件,该插件通过libwebsockets将一些数据流传输到浏览器的websocket连接。 编译过程运行良好,我可以在X-Plane中运行我的插件,并按预期看到数据从Google Chrome传入。

我想使用GDB进行调试,但是我已经花了大约一周的时间才取得成功。 我已经在Eclipse CDT中创建了一个启动配置以附加到Application ,但是每次应该启动调试会话时,我都会在Eclipse debug透视图中得到以下内容:

调试透视图线程视图

当启动Debug时,Eclipse向我显示了一个正在运行的进程的弹出列表,我选择了X-Plane,但是在启动时,它仅显示线程已被挂起。

我将启动配置设置如下:

在此处输入图片说明

作为替代方案,我尝试使用makefile设置项目,可以在此处看到:

https://gist.github.com/josefvanniekerk/690ad22160789c724490

Eclipse CDT中的gcc和链接器调用如下所示:

Building file: ../src/XPWebSocket.c
Invoking: GCC C Compiler
gcc -DAPL=1 -DIBM=0 -DLIN=0 -DXPLM210 -I../lib/xpsdk_v213/CHeaders/XPLM -I../lib/libwebsockets/lib -O3 -g3 -Wall -c -fmessage-length=0 -fvisibility=hidden -MMD -MP -MF"src/XPWebSocket.d" -MT"src/XPWebSocket.d" -o "src/XPWebSocket.o" "../src/XPWebSocket.c"
Finished building: ../src/XPWebSocket.c

Building target: xpwebsocket.xpl
Invoking: MacOS X C Linker
gcc -L../lib/libwebsockets/build/lib -F/{...omitted...}/Projects/xplane/XPWebSocketLib/lib/xpsdk_v213/Libraries/Mac -framework XPLM -shared -o "xpwebsocket.xpl"  ./src/XPWebSocket.o   -lwebsockets
Finished building target: xpwebsocket.xpl

我已经确保通过了-g选项来启用调试,但我只是无法使它正常工作。

我尝试将C / C ++应用程序指向/Applications/X-Plane/X-Plane.app/Contents/MacOS/X-Plane,将其更改为Debug / xpwebsocket.xpl,尝试将其指向内部的.xpl文件坦率地说,在X-Plane Resources / Plugins文件夹中,我不知道如何调试才能与X-Plane + GDB一起使用。

我已经开始尝试在命令行上建立GDB调试会话,如果我理解该过程,那么我可以四处寻找使Eclipse正常运行的方法。 但是谁知道需要多少天的阅读时间。

有人可以提供一些建议吗?

只是更多信息,Eclipse CDT中的GDB跟踪显示了以下内容(只是错误位):

033,165 &".gdbinit: No such file or directory.\n"
033,165 13^error,msg=".gdbinit: No such file or directory."

037,222 19-target-attach --thread-group i1 197&
037,223 19^error,msg="Asynchronous execution not supported on this target."

关闭后:CDT中的“不间断模式”,得到以下信息:

527,581 18^error,msg="Unable to find Mach task port for process-id 197: (os/kern) failure (0x5).\n (\
please check gdb is codesigned - see taskgated(8))"

猜猜我需要对X-Plane可执行文件进行代码签名。

我设法通过使用以下指南对gdb进行签名来解决此问题:

http://ntraft.com/installing-gdb-on-os-x-mavericks/

但是,修复以上问题仅表明优胜美地GDB可能存在很多错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM