GDB для отладки OpenCV в ROS

Я использовал OpenCV в моей кодовой базе ROS. Я видел ошибку сегментации в функции в OpenCV. Это может не быть проблемой в OpenCV, но для меня будет полезно отладить, если я точно знаю, что это за ошибка.

Однако таблица символов недоступна:

(gdb) bt full
#0  0x00007ffff633eefe in CvANN_MLP::predict(cv::Mat const&, cv::Mat&) const () from /opt/ros/hydro/lib/libopencv_ml.so.2.4
No symbol table info available.

Я связал OpenCV в CMakeList.txt.

find_package(OpenCV REQUIRED)
target_link_libraries(agentlib debug ${OpenCV_LIBS})

2 ответа

Если вы установили пакеты форм OpenCV и ROS, попробуйте также установить пакеты -dbg. Если вы создали библиотеки самостоятельно, попробуйте собрать их в конфигурации отладки. Чтобы установить версию отладки для проекта CMake, вам нужно установить CMAKE_BUILD_TYPE переменная к Debug,

Комбинирование cmake -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo -D CMAKE_BUILD_TYPE=DEBUG успешно добавляет отладочную информацию.

Другие вопросы по тегам