本文主要是为了记录针对SLAM相关的project,在Ubuntu环境下的进行的依赖库和环境配置。
基本安装包
1. 搜狗输入法
首先安装“GDebi“
sudo apt-get install gdebi
然后google 搜狗拼音针对Ubuntu/Debian的安装包, 然后进入安装包对应文件path下,执行以下安装搜狗输入法
sudo gdebi sogoupinyin_2.2.0.0102_amd64.deb
然后在keyboard中点击”+”, 去掉勾选, 搜索搜狗拼音对应的任务添加。最后注销或者重启后,该问题解决。
2. C/C++ IDE
- Clion
- Kdevelop
Dependencies
一般来说,大部分的依赖库安装步骤完成后。库的头文件在 “/usr/local/include/dependency_name/” 目录下,库文件则存在 “/usr/local/lib/” 目录下。所以,安装完成后可以去相应目录下查看是否有对应的文件,如果则初步说明安装成功。或者去网上搜一些测试程序跑跑看是否正确调包并执行。
但是,在具体程序编译或运行的时候可能还会因为调用库的报错,此时需要检查是否安装的最新依赖库,调用路径是否由问题,或者缺少什么库就去 google 找对应的库文件安装。
1. ROS
2. Pangolin
https://github.com/stevenlovegrove/Pangolin
3. OpenCV
OpenCV
Install OpenCV3 on Ubuntu
4. Eigen3
Eigen主要是提供几何模块。
去官网Eigen直接下载Eigen2/3的包,然后本地编译安装是可以的。
另外一种是直接用指令完成,因为现在Ubuntu下面已经有现成的eigen3的库了,本地编译可能还会有别的问题。所以不妨直接apt-get安装Eigen3,唯一需要注意的问题就是要修改下默认安装路径。
sudo apt-get install libeigen3-dev
cd /usr/include/eigen3
sudo cp Eigen -r /usr/include
5. Sophus
Sophus是提供李代数的支持。这里安装的是由Strasdat维护的非模板版本的Sophus库。
通过以下指令配置Sophus库:
git clone https://github.com/strasdat/Sophus.git
cd Sophus/
git checkout a621ff
mkdir build
cd build
cmake ..
make
6. PCL (Point Cloud Library)
可以参考官网PCL ,可以通过以下指令安装
sudo apt-get install libpcl-dev
//安装可视化工具包以及打开.pcd文件
sudo apt install pcl-tools
pcl_viewer XXX.pcd
7. g2o
g2o 是SLAM问题中非常重要的图(非线性)优化库!安装前需要Cmake和Eigen3已经安装好。
一些别的依赖库:On Ubuntu / Debian these dependencies are resolved by installing the following packages: libsuitesparse-dev, qtdeclarative5-dev, qt5-qmake, libqglviewer-dev
首先安装g2o的依赖库:
sudo apt-get install libqt4-dev qt4-qmake libqglviewer-dev libsuitesparse-dev libcxsparse3.1.4 libcholmod3.0.6
然后从github上下载g2o库,由于它是一个cmake工程,解压后进入对应的g2o目录下使用cmake编译并安装它。
mkdir build
cd build
cmake ..
make
sudo make install
另外,可参考[1-3]对于g2o的安装及测试有详细的说明。
8. Ceres
Ceres是g2o之外的另外一个SLAM项目中常用的非线性优化库,由谷歌开发维护的。
首先安装ceres的依赖库:
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.4 libgflags-dev libgoogle-glog-dev libgtest-dev
然后从github上下载ceres库,由于它是一个cmake工程,解压后进入对应的ceres目录下使用cmake编译并安装它。
mkdir build
cd build
cmake ..
make
sudo make install
9. DBoW2
DBoW2
不过一般都在各个开源库的3rdparty文件夹内
配置好后支持的开源SLAM
[1] ORB-SLAM2
References:
[1] 第六讲 图优化工具g2o的入门
[2] 在Ubuntu KyLin 16.04上安装g2o
[3] g2o的安装及初步使用