CLion запускает программу в отдельном системном терминале
У меня есть ncurses
Программа, которую я хотел бы интерактивно отлаживать с помощью CLion. Проблема в том, что когда я запускаю программу в CLion для ее отладки, встроенная консоль, на которой запускается программа, не отображает вывод ncurses
запрограммируйте правильно
Я хотел бы, чтобы программа запускалась в моем системном терминале, чтобы я мог видеть выходные данные во время отладки программы с помощью отладчика CLions.
Есть какой-либо способ сделать это?
2 ответа
Лучший способ добиться этого - использовать GDB, и сейчас может быть очень сложно начать, поэтому я покажу вам, как я это сделал в Linux.
- откройте терминал и перейдите к файлу отладки вашего проекта и введите
gdbserver localhost:1234 ./myFile
- откройте clion для проекта myFile и в правом верхнем углу вы увидите сборку, все (или название вашего проекта), щелкните по ней и перейдите к "редактированию конфигураций"
- в левом верхнем углу вы должны увидеть знак плюс, щелкните по нему и нажмите "GDB remote debug"
- затем в "целевой удаленного" типа
tcp:127.0.0.1:1234
- Далее в "пути сопоставления" нажмите плюс и введите
/location/to/file/myFile
(тот же файл, что и в 1.) как в удаленном, так и в расположении - Нажмите OK и в правом верхнем углу выберите название конфигурации, которую вы только что сделали, и нажмите debug
вам, возможно, придется попробовать перезапустить gdbserver еще раз, чтобы это сработало, но если вы выполнили все вышеперечисленные шаги, вы должны увидеть приглашение отладки, и на терминале вы увидите, что ваш проект запущен.
Есть некоторые ограничения, например, вам всегда нужно запускать gdbserver localhost:1234 ./myFile
команда на вашем терминале для его работы.
Некоторые видео / документация, которые мне помогли:
Я надеюсь, что это помогло:)
В других отладчиках вы могли бы сделать это, запустив ncurses
приложение в терминале и присоединение отладчика к процессу с помощью ncurses
,
Это позволяет избежать помех между ncurses
(который изменяет режимы ввода-вывода терминала) и командную строку отладчика.
Функция присоединения - это недавно выпущенная функция отладчика CLions:
Дальнейшее чтение:
- Больше возможностей для отладки: присоединение к локальному процессу (20 января 2016 г.)
- Дорожная карта CLion 1.2 (31 августа 2015 г.)
- Отладка в CLion (8 мая 2015 г.)
- CLion отвечает на часто задаваемые вопросы (16 сентября 2014 г.)
- Отладка приложения ncurses с помощью gdb
- Использование GNU GDB Debugger: отладка программ Ncurses