Eclipse CDT : start and attach to process from command-line

Знатоки эклипса и CDT, подскажите пожалуйста, как из командной строки запустить Eclipse для аттача и дебага linux приложения,

а-ля

ddd executable processID

или

gdb --pid processID

?

Желательно с возможностью остановиться (breakpoint) в указанном месте.
Спасибо!




			

Підписуйтеся на Telegram-канал «DOU #tech», щоб не пропустити нові технічні статті

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Описание проблемы -

В юниттестах есть вызов, который падает. Его надо продебажить. Для этого вводим спец команду вызова дебагера с аттачем к приложению и установкой брекпоинта, и ставим эту команду непосредственно перед падающим вызовом. С ддд и ждб всё ОК, но они убогие как IDE для дебага. Поэтому хотелось бы вот так же развернуть эклипс из командной строки в окошке, чтобы он приаттачился и поставил брекпоинты. Естественно, эклипс юзает GDB.

В юниттестах есть вызов, который падает. Его надо продебажить.

Вам это не надо :)

Правильное решение: Тыкаем логов.

Дополнение:

Если по юниттестах не понятно (уж до того что захотелось дебажить) где ошибка, рефакторим тесты (есть подозрение что они у вас скорее интеграционные)

Логи логами (а они есть), но подебажить тоже иногда бывает полезно, особенно если код не твой и курится медленно. Поэтому вопрос всё еще актуален :)

не годится, эклипс надо стратовать из коммандлайна, чтобы он разворачивался, аттачился и стопался в нужном месте ....

гугл говорит что как-то так
1) “Run” —> “Debug”
2) create a new debug config of type “C/C++ Attach to Local
Application”
3) Select Project
4) Select Binary
5) Select Debugger
6) Click “Apply”
7) Click “Debug”
CDT will present you a list of running processes.
8) Select the appropriate one

9) Debug....

Підписатись на коментарі