本文是在Ubuntu16.04下安装PCL。
按照官网的教程,有两种方法可以安装:
1、直接安装预先编译好的二进制库文件
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all
update的时候总会提示Some index files failed to download.
install的时候就会提示Unable to locate package libpcl-all.
可以改成如下安装
sudo apt-get install libpcl1
但安装过后用cmake时好像找不到该库文件。
最终用下面方式成功了
sudo apt-get install libpcl-dev
但还有好多pcl模块没有装上。
2、下载pcl的源码自己编译安装
pcl源码可以从GitHub上直接clone,也可以直接在官网下载下来。参照官网的教程,编译安装pcl依赖几个库:
- Flann
- Boost
- Eigen
- VTK
上面三个库必须要安装,否则cmake时检测依赖库时通不过。
其中flann库最坑,官网只给出了源码,要自己编译安装,但按照官网给的教程总是出错(编译无法通过)。
最后在网上找到以下安装方法(直接安装库文件):
sudo apt-get install libflann-dev
sudo apt-get install libvtk5-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libeigen3-dev
然后进入PCL根目录编译安装PCL
mkdir build
cd build
cmake ..
make
make install
也可以用下面的方法
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j2
sudo make -j2 install
注意,可能由于我的电脑的问题,make时总是出现段错误,不过没关系,出现错误之后继续编译就好。
注意:通过上面的步骤能够将PCL安装好,但要运行相关的程序,例如slam14讲中的点云拼接,还需要安装openNI库,具体见后下面的博客。
最后换至Ubuntu14.04LTS版本,用方法一的三部就完美解决了。Ubuntu16.04LTS的bug。
参考文章: