一、安装相关依赖项
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev libgoogle-glog-dev libgtest-dev
出现无法定位libcxsoarse3.1.2时的解决方法:
//第一步,打开sources.list
sudo gedit /etc/apt/sources.list
//第二步,将下面的源粘贴到最上方sources.list
deb http://cz.archive.ubuntu.com/ubuntu trusty main universe
//第三步,更新源
sudo apt-get update
//第四步,重新输入依赖项安装命令安装依赖项
sudo apt-get install liblapack-dev libsuitesparse-dev libcxsparse3.1.2 libgflags-dev libgoogle-glog-dev libgtest-dev
2、解压ceres,打开终端进入解压后的文件,编译安装:
mkdir build
cd build
cmake ..
make -j
sudo make install
在make时可能会出现
error: no type named ‘Literal’ in ‘struct Eigen::NumTraits<ceres::Jet<double, 2> >’
查了下资料原来是因为ceres-solver和eigen3.3不兼容,需要重新配置一个版本。
官网下载网址:http://eigen.tuxfamily.org/index.php?title=Main_Page
亲测下载eigen-3.2.10版本可用!
下载eigen后解压,编译安装
mkdir build
cd build
cmake ..
make -j
sudo make install
再编译ceres-solver就完成啦!