orbslam_semantic_nav_ros 编译出现的问题1

安装环境 ubuntu20.04
ros NODES
项目链接:
https://github.com/MRwangmaomao/semantic_slam_nav_ros


安装腾讯ncnn库

其他库
opencv 3.4.9
eigen 3.4.0
pangolin 已安装

vtk5
自带的是 vtk-7.1 建议自己源码安装
下载链接:https://vtk.org/download/
下载了vtk 7.1
mkdir build
cd build
cmake …
make -j8
sudo make install

方法二需要

配置环境变量

打开~/.bashrc 文件并添加以下行

export VTK_DIR=/usr/local/lib/cmake/vtk-7.1
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

参考了:https://blog.csdn.net/qq_54199287/article/details/134136943

pcl 1.7

推荐:
-> pcl-1.7.2 vtk-5.10.1 / vtk-6.2.0
​-> pcl-1.8.1 vtk-7.1.1
-> pcl-1.9.1 vtk-8.2.0(建议8.1)
pcl 1.12 vt7.1也有人这样安装编译 但是对于我们的呢

1.7.2版本与当前的eigen版本产生冲突 尝试一下新的 尝试pcl-1.10.1

mkdir  build
cd build
cmake ..
make -j8   
sudo make install
下载链接:https://github.com/PointCloudLibrary/pcl/tree/pcl-1.10.1

卸载pcl需要修改里面的内容

sudo make uninstall
sudo rm -r build
sudo rm -r /usr/include/pcl-1.10 /usr/share/pcl /usr/bin/pcl* /usr/lib/libpcl*
sudo rm -r  /usr/libx86_64-linux-gnu/libpcl*
sudo rm -r /usr/lib/x86_64-linux-gnu/cmake/pcl

可能出现的错误!:

CMake Error at /opt/ros/noetic/share/pcl_ros/cmake/pcl_rosConfig.cmake:117 (message):
  Project 'pcl_ros' specifies '/usr/include/pcl-1.10' as an include dir,
  which is not found.  It does neither exist as an absolute directory nor in
  '${
   {
   prefix}}//usr/include/pcl-1.10'.  Check the issue tracker
  'https://github.com/ros-perception/perception_pcl/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)
  semantic_slam_nav_ros/CMakeLists.txt:56 (find_package)
解决:
sudo cp -r '/opt/ros/noetic/include/pcl_ros' '/usr/include/pcl-1.10'

解决办法 但是这个方法可以解决该问题,但是对于之前的报错依旧不管用!!!
https://blog.csdn.net/weixin_43971588/article/details/133157581

不知道是什么原因,第一次安装的时候并没有这个错误!!!
安装了PCL1.10 还是会出现相关保存问题 在编译过程中

因此尝试新版本的pcl1.12
https://blog.csdn.net/weixin_40653140/article/details/126282010

同样安装了pcl1.12后还是报错:
CMake Error at /opt/ros/noetic/share/pcl_ros/cmake/pcl_rosConfig.cmake:117 (message):
Project ‘pcl_ros’ specifies ‘/usr/include/pcl-1.10’ as an include dir,
which is not found. It does neither exist as an absolute directory nor in
‘${ {prefix}}//usr/include/pcl-1.10’. Check the issue tracker
‘https://github.com/ros-perception/perception_pcl/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)
semantic_slam_nav_ros/CMakeLists.txt:56 (find_package)

这是安装了多版本的pcl ,ros自带的pcl以及自己的pcl版本
https://blog.csdn.net/qq_42731705/article/details/129380907
pcl指定自己的版本
这样就把这个问题解决 但是这种操作是否有问题 不太清楚
https://blog.csdn.net/qq_42731705/article/details/129380907

安装pcl1.8出现的问题参考:
boost版本问题 修改头文件路径即可
1.https://blog.csdn.net/weixin_45534376/article/details/132864676
pcl与eigen版本问题 修改 源代码中的用法即可
2.https://blog.csdn.net/weixin_42621405/article/details/119853242

编译源码出现新问题:
报错1.1:
/home/ckq/catkin_ws_iit/src/semantic_slam_nav_ros/orbslam/include/MergeSG.h:176:66: error: wrong number of template arguments (3, should be at least 1)
pcl::EuclideanClusterComparator::Ptr euclidean_cluster_comparator_;


octomap 安装
下载地址:https://github.com/OctoMap/octomap

mkdir  build
cd build
cmake ..
make -j8   
sudo make install  

进行了安装

直接安装会出现问题,
在make阶段报错内容是:
[100%] Linking CXX executable …/…/bin/octovis
/usr/bin/ld: …/…/octovis/src/extern/QGLViewer/libQGLViewer.so: undefined reference to `__cxa_throw_bad_array_new_length@Qt_5’
collect2: error: ld returned 1 exit status
make[2]: *** [octovis/CMakeFiles/octovis.dir/build.make:360: …/bin/octovis] Error 1
make[1]: *** [CMakeFiles/Makefile2:1884: octovis/CMakeFiles/octovis.dir/all] Error 2
可以参考:
https://blog.csdn.net/liu13364876993/article/details/110188553
就可以解决以上问题

测试八叉树安装成功与否:
https://www.codenong.com/cs105964310/


参考各种库版本对应关系https://blog.csdn.net/qq_41049423/article/details/129391823

ubuntu20.04下安装pcl_ubuntu安装pcl
https://blog.csdn.net/feichangyanse/article/details/135162334

安装pcl之前安装好 vtk


别人安装教程:
ubuntu16.04 配置qt5.9+VTK5.10+pcl1.7 (orbslam_semantic_nav_ros依赖库1)
https://blog.csdn.net/qq_45539458/article/details/106390709

ubuntu16.04 配置opencv3.4+pangolin+octomap (orbslam_semantic_nav_ros依赖库2)
https://blog.csdn.net/qq_45539458/article/details/106411290

安装科大讯飞语音相关库
注册网址链接:
https://www.xfyun.cn/services/voicedictation
暂时先不注册 获取api

参考链接:https://blog.csdn.net/lion_no_back/article/details/129463403

安装依赖:

sud

你可能感兴趣的:(计算机视觉,机器人)