参照解决cv_bridge和opencv之间版本匹配问题 - 知乎 (zhihu.com)
这种方式解决不了,试了N种方法
把虚拟机恢复回到了最初版本,发现原来在readme里面有一些依赖库忘记装,先装了pangolin
第一步下载安装pangolin,记得最后sudo make install
发现ch3中,siglot库有问题,实际上把cmakelists改成C++14就可以了
./visualizeGeometry: error while loading shared libraries: libpango_windowing.so: cannot open shared object file: No such file or directory
解决:sudo ldconfig
pcl库出问题,又是c++14的原因
然后把数据文件放到build当中可以成功运行
接下来尝试运行
sudo apt-get install ros-YOUR_DISTRO-cv-bridge ros-YOUR_DISTRO-tf ros-YOUR_DISTRO-message-filters ros-YOUR_DISTRO-image-transport
之前莫名其妙出现fatal error,原因居然是内存不够!!内存调成了8个G
但编译成功之后,执行过程调用第一个包一直报错,而且是不写原因的报错,应该还是OpenCV冲突的原因
放弃!!打算下载ubuntu16.04
最终解决方法
准备放弃之余,看到了这篇,属实是帮大忙了!!太感谢[替你踩遍坑]Ubuntu20.04+ROS Noetic+OPENCV3成功运行vins-fusion_ros noetic opencv_睡前救世主( ̄_ ̄ )的博客-CSDN博客