gtsam配置MATLAB toolbox
1、下载gtsam
安装依赖
Boost >= 1.43 (Ubuntu: sudo apt-get install libboost-all-dev)
CMake >= 3.0 (Ubuntu: sudo apt-get install cmake)
A modern compiler, i.e., at least gcc 4.7.3 on Linux.
安装 TBB
sudo apt-get install libtbb-dev
安装MKL
官网参考链接
sample:
要安装英特尔® 性能库之一的特定版本
sudo apt-get install intel-mkl-2018.2-046
要安装适用于 Python* 的英特尔® 分发版的特定语言版本:
sudo apt-get install intelpython3
下载gtsam
git clone https://bitbucket.org/gtborg/gtsam.git
打开CMakelist.txt,按照readme原文操作This is the GTSAM MATLAB toolbox, a MATLAB wrapper around the GTSAM C++ library. To build it, enable GTSAM_INSTALL_MATLAB_TOOLBOX=ON in CMake.找到GTSAM_INSTALL_MATLAB_TOOLBOX,把OFF改为ON
2、matlab修改
删除matlab以下文件夹中包含libstdc++的文件
(我的matlab安装路径为 /home/matlab)
matlab/[version]/sys/os/[system]/
matlab/[version]/bin/[system]/
3、复制文件
将matlab matlab/extern/include/路径下的 中mex.h matrix.h tmwtypes.h复制到gtsam下
注意一定直接放在gtsam文件夹下,就是和build等文件夹平级的路径
4、编译gtsam下的cmake文件
cd gtsam/build
cmake -DMEX_COMMAND=matlab/bin/mex \
-DMATLAB_ROOT=matlab \
-DGTSAM_INSTALL_MATLAB_TOOLBOX=ON ..
sudo make install
配置MATLAB
由于MATLAB要能找到你编译的libgtsam.so.4文件,如果你gtsam安装在系统目录下,执行`
sudo ldconfig
如果安装在某个install目录下,在你的shell运行或者在bashrc里添加
export LD_LIBRARY_PATH=/XXX/gtsam-4.0.3/install/lib:$LD_LIBRARY_PATH
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
生效之后重启你的MATLAB
source ~/.bashrc
cd YOURMATLABPATH
./bin/matlab
5、测试
在build文件下:
make LocalizationExample
make LocalizationExample.run
5、添加toolbox
我的toolbox安装路径在usr/local/
在matlab添加工具箱,右键gtsam_toolbox文件夹将当前文件夹添加到路径
6、运行
在matlab运行终端输入
gtsamExamples
配置成功!