CMakeFiles/inf2vis.dir/inf2vis_check.c.o:在函数‘cvPointFrom32f’中:
/usr/local/include/opencv2/core/types_c.h:929:对‘cvRound’未定义的引用
/usr/local/include/opencv2/core/types_c.h:930:对‘cvRound’未定义的引用
CMakeFiles/inf2vis.dir/inf2vis_check.c.o:在函数‘cvReadInt’中:
/usr/local/include/opencv2/core/core_c.h:2350:对‘cvRound’未定义的引用
CMakeFiles/inf2vis.dir/inf2vis_check.c.o:在函数‘cvEllipseBox’中:
/usr/local/include/opencv2/imgproc/imgproc_c.h:1041:对‘cvRound’未定义的引用
/usr/local/include/opencv2/imgproc/imgproc_c.h:1042:对‘cvRound’未定义的引用
collect2: error: ld returned 1 exit status
CMakeFiles/inf2vis.dir/build.make:94: recipe for target 'inf2vis' failed
make[2]: *** [inf2vis] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/inf2vis.dir/all' failed
make[1]: *** [CMakeFiles/inf2vis.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2
在CMakeList.txt中加入 add_definitions(-O4 -g)后可解决此问题。
该博客讲述了在使用CMake构建项目时遇到的关于OpenCV库中cvRound函数未定义的链接错误,并提到添加-O4-g编译选项可解决。涉及的函数如cvPointFrom32f、cvReadInt和cvEllipseBox都依赖于cvRound。

被折叠的 条评论
为什么被折叠?



