ubuntu20.04 install gtsam && eigen 版本设置 注意事项

 安装依赖:

Boost >= 1.65

sudo apt-get install libboost-all-dev

CMake >= 3.0

sudo apt-get install cmake

gcc 4.7.3 >=4.7.3

sudo apt-get install gcc

依赖TBB:

//安装TBB:
sudo apt-get install libtbb-dev

依赖MKL:

安装MKL需要进入获取root权限

/*注册密钥*/

sudo su

cd /tmp

wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB

sudo rm GPG-PUB-KEY-INTEL-SW-PRODUCTS-2019.PUB

exit

关闭该root权限终端

打开新的终端:

Ctrl+Alt+T

/*开始安装mkl*/


sudo wget https://apt.repos.intel.com/setup/intelproducts.list -O /etc/apt/sources.list.d/intelproducts.list
 



sudo sh -c 'echo deb https://apt.repos.intel.com/mkl all main > /etc/apt/sources.list.d/intel-mkl.list'



/*如果你的系统是32位否则跳过执行下一条*/
sudo dpkg -add-architecture i386



sudo apt-get update


/*可以根据需要选择安装版本*/
sudo apt-get install intel-mkl-2020.4-912


 安装GTSAM

GTSAM的git hub网址icon-default.png?t=M276http://Releases · borglab/gtsam · GitHub 下载自己需要的版本注意:ubuntu20.04的系统需要GTSAM>=4.03

否则报错:

The "debug" argument must be followed by a library.”

(笔者下载的是GTSAM 的4.2a5)

编译

cd gtsam xxx    (解压之后的gtsam文件夹)

mkdir build && cd build

cmake ..

make check

sudo make install

一般情况下cmake ..会报错

CMake Error at wrap/CMakeLists.txt:29 (target_link_libraries):
 The debug argument must be followed by a library.
cd gtsam && cd cmake 

//打开gtsam/cmake/HandleEigen.cmake 
gedit HandleEigen.cmake 

if(GTSAM_USE_SYSTEM_EIGEN)

的上面添加下面一句

set(GTSAM_USE_SYSTEM_EIGEN ON)

设置GTSAM库所使用的EigenubuntuEigen版本一致

效果如下图                line  13

ubuntu20.04 install gtsam && eigen 版本设置 注意事项_第1张图片

保存退出

清空build 文件夹

继续编译

cd gtsam xxx    (解压之后的gtsam文件夹)

mkdir build && cd build

cmake ..

make check

sudo make install

cmake ..

后终端显示如下:

Use System Eigen  : ON

 摸索了好一会,希望帮助Dai佬各位节省时间!!!

你可能感兴趣的:(ubuntu,linux,c++)