爲統一平臺,減少版本兼容性,對於在Ubuntu16.04的SLAM開發用戶,推薦以下配置。
glog和gflags庫
使用系統默認版本,和自編的FindPackage文件
Eigen庫
使用系統默認版本3.2.92,和編譯Ceres時提供的FindPackage文件,這個庫只有頭文件
注意需要ln -s /usr/include/eigen3/Eigen /usr/include/Eigen
,使用的時候就不需要include eigen3/Eigen/Core了,同時這樣做也不需要find_package(Eigen)了
pcl庫
使用系統默認版本1.7.2,自帶FindPackage文件,注意此庫會依賴系統自帶eigen庫
ceres庫
依賴eigen庫,使用版本1.14.0,儘量使用穩定版,編譯完成後自帶FindPackage文件
g2o庫
建議使用Release下的20170730版本, 和附帶的cmake文件
sophus庫
依賴ceres庫,建議使用Rlease下的1.0.0版本,自帶SophusConfig.cmake文件,這個庫只有頭文件
boost庫
使用系統版本庫1.58
sudo apt install libboost-dev
libboost-program-options-dev
libboost-filesystem-dev
libboost-regex-dev
libboost-system-dev
libboost-test-dev
上述庫版本對windows不可用
windows的vcpkg默認編譯的eigen庫,g2o庫都是最新版