需要编译完额外安装的大型库有: OpenCV,Ceres,Sophus,
目录
注意:
自行在github上下载的安装在/usr/local/include 中,如果使用apt-get 下载的默认安装在/usr/include中
1、Eigen线性代数库的安装
Eigen库是一个C++线性代数开源库[1],它提供了有关线性代数、矩阵和矢量运算、数值分析及相关的算法。许多上层的软件库也使用Eigen进行矩阵运算,包括g2o、Sophus等。Eigen库由Ubuntu软件源中提供,通过apt命令可以很方便的安装Eigen。
去官网下载Eigen3.2
然后编译
mkdir build
cd build
cmake ..
make
sudo make install
2、Sophus李代数库的安装
Eigen库提供了几何模块,但是没有提供李代数的支持。一个较好的李代数库是由Strasdat维护的Sophus库。Sophus库支持三维运动的SO(3)、SE(3),此外还支持二维运动的SO(2)、SE(2)和相似变换Sim(3)等内容。它是直接在Eigen库基础上开发的,因此我们不需要安装额外的依赖库。(Sophus库只需编译,无需安装)
tar -xzvf Sophus.tar.gz
cd Sophus #进入Sophus库文件目录下
mkdir build #新建build文件夹
cd build #进入build文件夹
cmake .. #build上一层目录下执行CMake命令
make #编译
3、Ceres非线性优化库的安装
1.ceres是google库,首先安装相关依赖
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev
sudo apt-get install libgoogle-glog-dev libgtest-dev
2.如果安装时找不到 cxsparse 或者其他的lib,需要添加下面的源
sudo gedit /etc/apt/sources.list
把下面的源粘贴到source.list的最上方
deb http://cz.archive.ubuntu.com/ubuntu trusty main universe
更新一下
sudo apt-get updat