2013-11-25 138 views
1

我在ROS代碼庫中使用了OpenCV。我在OpenCV的函數中看到了一個分段錯誤。這在OpenCV中可能不是問題,但是如果我知道錯誤究竟是什麼,它將對我進行調試很有幫助。GDB調試ROS中的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. 

我在CMakeList.txt鏈接的OpenCV。

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成功追加調試信息。