记录ubuntu中的各种问题
【问题详述】
CMake Error at /opt/ros/noetic/share/cv_bridge/cmake/cv_bridgeConfig.cmake:113 (message):
Project ‘cv_bridge’ specifies ‘/usr/include/opencv4’ as an include dir,
which is not found. It does neither exist as an absolute directory nor in
‘${{prefix}}//usr/include/opencv4’. Check the issue tracker
‘https://github.com/ros-perception/vision_opencv/issues’ and consider
creating a ticket if the problem has not been reported yet.
Call Stack (most recent call first):
/opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package)
CMakeLists.txt:8 (find_package)
【解决办法】
这个问题主要是因为重装过opencv,导致cv_bridge中一些路径无效,所以只要改掉即可
打开/opt/ros/noetic/share/cv_bridge/cmake/cv_bridgeConfig.cmake文件
sudo gedit /opt/ros/noetic/share/cv_bridge/cmake/cv_bridgeConfig.cmake
蓝色框内容指向新安装的opencv的路径
if(NOT "include;/usr/include/opencv4 " STREQUAL " ")
改为
if(NOT "include;/home/victor/opencv-4.2.0/include/opencv2 " STREQUAL " ")
set(_include_dirs "include;/usr/include/opencv4")
改为
set(_include_dirs "include;/home/victor/opencv-4.2.0/include/opencv2")
这个路径/home/victor/opencv-4.2.0/include/opencv2,指向的是opencv.hpp这个文件的位置
【总结】
安装多版本opencv一定要管理好文件位置
一定不要轻易卸载自带的opencv,血与泪的教训