如何使用GDB调试OpenCV程序?

时间:2011-01-10 13:34:00

标签: debugging opencv

我写了一个由gcc -g * .o -o *编译的OpenCV程序,运行成功。但是,当我尝试使用gdb调试此程序时,如gdb cvmat,它不起作用。我如何使用gdb调试opencv程序?

3 个答案:

答案 0 :(得分:1)

虽然您的程序是使用调试符号编译的(使用-g标志),但听起来像OpenCV不是。在使用CMAKE_BUILD_TYPE配置构建时,尝试将Debug设置为RelWithDebInfoccmake,尝试使用调试符号重建OpenCV安装。

答案 1 :(得分:1)

-D CMAKE_BUILD_TYPE=Debug我没有运气。我可以使用生成的库,但我无法在OpenCV函数内部进行调试。使用cmake-gui并没有为我解决问题。

我能够通过手动编译我感兴趣的库组件来调试OpenCV内部...

g++ -g -I ../../include/opencv/ -I ../../3rdparty/include/ cxlapack.cpp cxmatrix.cpp ../../lib/libcxcore.so my_source_file.cpp

答案 2 :(得分:1)

组合cmake -DCMAKE_BUILD_TYPE:STRING = RelWithDebInfo -D CMAKE_BUILD_TYPE = DEBUG成功附加调试信息。