PCL编译提示CMake Error: Boost not Found(common is required but boost was not found)

不得不说ORB-SLAM2依赖库实在是太多了,库和库之间很容易冲突,这不,源码编译安装了boost1.54,然后在编译PCL1.8的时候报错了:

CMake Error: Boost not Found(common is required but boost was not found)

我搜了不少答案,其实就是解决如何让Cmake找到Boost库的问题。

几个不错的有参考性的答案如下:

一.升级boost

升级Cmake和Boost解决cmake-error-boost-not-found

二.修改CmakeList.txt

我的CMakelists.txt关于Boost的部分如下:

set(Boost_USE_STATIC_LIBS ON)
set(Boost_USE_MULTITHREADED ON)
ADD_DEFINITIONS(-DBoost_USE_STATIC_LIBS=ON)
set(Boost_INCLUDE_DIR /usr/include/)
set(Boost_LIBRARY_DIR /usr/lib/x86_64-linux-gnu/)


find_package(Boost REQUIRED)

其实我也是修改了

set(Boost_LIBRARY_DIR /usr/lib/x86_64-linux-gnu/)

这行才把问题解决的,这里需要

apt-get install libboost-all-dev

安装libboost库后,再

locate so.1.54

把这个目录设为Boost_LIBRARY_DIR,因为上面命令默认安装libboost1.54版本,所以

locate so.1.54

就能找到boost库.so文件的所在位置。

你可能感兴趣的:(slam,C++,linux,C/C++,Boost库,linux运维,cmake,boost,linux,c++,PCL库)