Ubuntu16.04 配置SLAM环境

Ubuntu16.04 配置SLAM环境,第1张

Ubuntu16.04 配置SLAM环境

Ubuntu16.04 配置SLAM环境
  • 前言
  • 1. Eigen3.3
  • 2. PCL
  • 3. Ceres
  • 4. OpenCV
  • 5. GTSAM

前言

  拿到了一个Ubuntu16.04系统的新电脑,配置一个SLAM环境跑一些开源算法(主要是一些激光雷达SLAM算法),需要安装配置一些库,在这里简单记录一下配置过程以及中间的一些问题。
  我的配置为:Eigen3.3.7 + pcl1.8 + ceres1.14.0 + openCV3.4.1 + gtsam4.0.2
  在安装过程中你会发现部分依赖是这些库共有的,共有的依赖只需要安装一次就可以,再次执行命令安装的时候它会提示你没有新的包需要安装,这里全部打出来是为了更清晰的表示出每个库都需要哪些依赖。

1. Eigen3.3

  这里注意一个问题,Eigen3是可以通过命令下载的,但是在SLAM的环境配置中一般需要安装Eigen3.3以上版本,直接通过命令下载的额Eigen版本较低,后面极大概率会出现问题。这里建议源码安装Eigen3.3,如果你已经安装了旧版本则需要先卸载在进行安装。

  1. 卸载旧版本

  先检查是否安装过旧版本

pkg-config eigen3 --modversion

  定位到相关文件,直接使用 rm -rf 手动删除(小心一点,别删错东西)

sudo updatedb
locate eigen3
sudo rm -rf /usr/include/eigen3 /usr/lib/cmake/eigen3 /usr/share/doc/libeigen3-dev /usr/share/pkgconfig/eigen3.pc /var/lib/dpkg/info/libeigen3-dev.list /var/lib/dpkg/info/libeigen3-dev.md5sums
  1. 编译安装新版本
mkdir build
cd build
cmake ..
sudo make install
  1. 将Eigen映射到 /usr/include 路径下,便于程序找到
sudo cp -r /usr/local/include/eigen3 /usr/include/
2. PCL
  1. 安装依赖
sudo apt-get update
sudo apt-get install git build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.8 libflann-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
sudo apt-get install qt-sdk openjdk-8-jdk openjdk-8-jre

  除了上述依赖外还需要安装vtk,但注意vtk安装的版本,我第一次安装的时候执行的命令为:

sudo apt-get install libvtk5.10-qt4 libvtk5.10 libvtk5-dev

  执行该命令安装vtk之后后面pcl库是可以成功安装的,但是在后续编译SLAM算法时发现需要安装 cv-bridge,在安装cv-bridge的时候会自动安装更高版本的vtk库,如果更新了vtk库就需要重新编译安装pcl,否则仍无法成功编译SLAM算法。因此,最好是在编译安装pcl库之前就直接安好cv-bridge。

sudo apt-get install ros-kinetic-cv-bridge
  1. 编译源码
mkdir release
cd release
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr  
      -DBUILD_GPU=ON -DBUILD_apps=ON -DBUILD_examples=ON  
      -DCMAKE_INSTALL_PREFIX=/usr ..
make -j8
sudo make install
  1. 安装pcl转换工具
sudo apt-get install ros-kinetic-pcl-conversions
3. Ceres
  1. 安装依赖
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.4 libgflags-dev
sudo apt-get install libgoogle-glog-dev libgtest-dev
  1. 编译源码
mkdir build
cd build
cmake ..
make -j8
sudo make install
4. OpenCV
  1. 安装依赖
sudo apt-get install cmake git
sudo apt-get install build-essential pkg-config
sudo apt-get install libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev
  1. 编译源码
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j8
sudo make install
5. GTSAM
  1. 安装依赖
sudo apt-get install libboost-all-dev // Boost >= 1.43
sudo apt-get install cmake // CMake >= 3.0
sudo apt-get install libtbb-dev // Intel Threaded Building Blocks (TBB) 可选
  1. 编译源码
mkdir build
cd build
cmake ..
sudo make install

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5698353.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存