Официальный форум СВД Встраиваемые Системы
20 Апрель, 2024, 00:14:16 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Отладка ncurses в Momentics IDE  (Прочитано 1796 раз)
shmem
Интересующийся

Сообщений: 3


« : 29 Декабрь, 2016, 11:59:02 »

Подскажите пожалуйста имеется ли возможность каким-либо образом отлаживать ncurses-приложения в моментиксе?
ОС на которой стоит моментикс  - Windows 7 x86.

Пробовал следующее:
В свойствах проекта во вкладке Enviroments ввел переменную TERM. Перебрал все возможные терминалы ( d:\QNX650\target\qnx6\usr\lib\terminfo\).
Некоторые не поддерживают цвета (has_colors возвращает false), другие, якобы поддерживают, но на самом деле выводятся абра-кадабры. На нажатие клавиш консоль не реагирует.
Вообщем, тупик.
Может можно как-то запустить само приложение на целевой машине, а отладку делать в моментиксе, наподобии с приложениями фотона?

Спасибо.
Записан
Игорь Рондарев
Модератор
Опытный пользователь

Сообщений: 282

Сотрудник СВД ВС


WWW
« Ответ #1 : 29 Декабрь, 2016, 13:03:14 »

Добрый день! Существует возможность подключения отладчиком к приложению, уже запущенному на целевой системе. Для этого необходимо сперва запустить приложение на целевой системе (так, чтобы была возможность взаимодействия с ncurses-интерфейсом), а затем создать для него Debug-конфигурацию соответствующего типа (Debug -> Debug Configurations -> C/C++ QNX Attach to Remote Process via QConn (IP) -> кнопка New launch configuration).

После запуска занной Debug Configuration система предложит выбрать процесс из списка запущенных на целевой системе и подключится к нему. Поскольку при подключении отладчика приложение может остановиться в произвольной точке (не обязательно в той части, исходный код которой доступен), нужно расставить необходимые точки останова (Breakpoints) и продолжить выполнение приложения (кнопка "Resume"  или F8 перспективы "Debug perspective").

После завершения отладки можно отключиться от приложения без его фактической остановки (кнопка "Disconnect" перспективы "Debug perspective").
Записан

Ekaterina
Интересующийся

Сообщений: 7


« Ответ #2 : 01 Февраль, 2017, 10:31:37 »

Можно в этой же теме спрошу? Как вообще curses подключить в моментикс? При компиляции вяжет ошибку undefined reference to "...".
Записан
Игорь Рондарев
Модератор
Опытный пользователь

Сообщений: 282

Сотрудник СВД ВС


WWW
« Ответ #3 : 01 Февраль, 2017, 10:58:18 »

Можно в этой же теме спрошу? Как вообще curses подключить в моментикс? При компиляции вяжет ошибку undefined reference to "...".
В таких случаях надо явно указать требуемую библиотеку в свойствах проекта (в вашем случае - библиотеку libncurses). Если используются проекты QNX C/C++, то это можно сделать через меню Properties, далее QNX C/C++ Project, закладка Linker, категория Extra libraries.
Записан

Ekaterina
Интересующийся

Сообщений: 7


« Ответ #4 : 01 Февраль, 2017, 11:40:24 »

  Теперь ошибка:
Cannot find -lncurses_g 
Записан
Игорь Рондарев
Модератор
Опытный пользователь

Сообщений: 282

Сотрудник СВД ВС


WWW
« Ответ #5 : 01 Февраль, 2017, 12:09:23 »

 Теперь ошибка:
Cannot find -lncurses_g  
Рассогласование типа сборки (Debug/Release) между вашим приложением и библиотекой ncurses. Нужно либо отключить функцию "Use proper variant" в свойствах подключаемой библиотеки, либо собирать только Release-версию приложения. Подробнее тут.
« Последнее редактирование: 01 Февраль, 2017, 12:11:50 от Игорь Рондарев » Записан

Ekaterina
Интересующийся

Сообщений: 7


« Ответ #6 : 01 Февраль, 2017, 14:53:08 »

Спасибо! Всё получилось Smiley
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2024 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 03 Апрель, 2024, 18:48:54