ProfinetConnector/debug_support/readme.txt

21 lines
1.7 KiB
Plaintext
Raw Normal View History

При запуске под дебагом pn_dev использует доступ к сокетам, в ubuntu это требует прав sudo. Для того чтобы работало нужно выполнить следующее:
1. В терминале ввести команду:
sudo visudo
2. В конец файла добавить строку
username ALL=(root) NOPASSWD: /usr/bin/gdb
Это отключит запрос пароля при запуске gdb с правами sudo. Где username - имя пользователя.
3. Сделать файл debug_support/gdb исполняемым:
sudo chmod -x debug_support/gdb
3. В файле launch.json в качестве отладчика установить скрипт debug_support/gdb, добавив параметр:
"miDebuggerPath": "путь до папки/profinet_io_dev/debug_support/gdb".
4. Для запуска pn_dev нужны аргументы, их необходимо указать в launch.json:
"args": ["-ienp0s8", "-v", "-v", "-v", "-v", "-p/home/svad/Projects/profinet_io_dev/debug_support"],
-i - eth-интерфейс к которому подключен Profinet мастер
-v - уровень логов, чтобы был Debug нужно указать 4 раза
-p - папка для хранения настроечных файлов
Если версия Ubuntu 22.04, то там есть баг с gdb - он падает при переключении на другой поток в отлажеваемом ПО
Для исправления нужно либо установить Ubuntu 22.10, либо собрать gdb 12.1.
Для сборки запустить скрипт gdb_update.sh