2013-11-25 5 views
1

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

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

(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}) 

ответ

1

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

0

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

Смежные вопросы