2015-02-18 3 views
1

Я создаю плагин на Mac OS X с помощью Eclipse CDT, который передает данные через libwebsockets в соединение веб-узла браузера. Процесс компиляции отлично работает, и я могу запустить свой плагин на X-Plane и увидеть данные, поступающие в Google Chrome, как ожидалось.Не удалось подключить GDB к процессу с Eclipse CDT

Я хочу настроить отладку с помощью GDB, но я уже почти неделю тянул свои волосы без каких-либо успехов. Я создал конфигурацию запуска в Eclipse CDT для Присоединить к применению, но каждый раз, когда сеанс отладки должен начать, я просто получаю следующее в отладочной перспективе Eclipse:

Debug perspective thread view

При запуске Debug, Eclipse показывает мне всплывающий список запущенных процессов, и я выбираю X-Plane, но при запуске он просто показывает, что поток приостановлен.

Я настроил конфигурацию запуска следующим образом:

enter image description here

В качестве альтернативы, я попытался создать проект с помощью Makefile, который можно увидеть здесь:

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

Вызовы gcc и компоновщика из Eclipse CDT выглядят следующим образом:

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 работать. Но кто знает, сколько дней чтения, что будет связано.

Может кто-нибудь предложить совет?

Более подробную информацию только в, GDB след в Eclipse CDT показывает следующее (только биты ошибок):

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.

ответ

0

мне удалось разобраться в этом, подписав GDB, используя следующую инструкцию:

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

Однако, фиксируя выше только показывает, что есть, возможно, LOT неправильно с помощью GDB на Йосемити.

Смежные вопросы