PCL官网:http://www.pointclouds.org
一、安装依赖项
sudo apt-get update
sudo apt-get install git build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.8 libflann-dev
sudo apt-get install libeigen3-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libvtk5.10-qt4 libvtk5.10 libvtk5-dev
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
sudo apt-get install qt-sdk openjdk-8-jdk openjdk-8-jre 注:部分依赖项本机上之前可能已经安装过,在编译过程中可能会因为版本兼容问题报错。
二、下载源码
在GitHub上选择需要的版本下载。
wget https://github.com/PointCloudLibrary/pcl/archive/pcl-1.8.1.tar.gz三、安装PCL
① 解压
tar xvf pcl-pcl-1.8.1.tar.gz② 进入文件夹
cd pcl-pcl-1.8.1③ 新建一个中间文件夹
mkdir build && cd build④ 构建编译系统
cmake -DCMAKE_BUILD_TYPE=Release ..⑤ 编译
make -j8⑥ 安装
make install至此,PCL安装完成!安装步骤很简单,但是在安装过程中可能会出现很多错误。
四、 安装过程中出现的部分问题
① cmake过程中出现的错误
问题:libboost版本不兼容
解决方案:重新安装对应版本的libboost
# 官网寻找需要libboost的版本:https://www.boost.org/users/history/
# 安装过程
tar xvf boost_1_58_0.tar.gz
cd boost_1_58_0
./bootstrap.sh
./b2 install安装完成,重新cmake
cd build
rm -rf *
cmake -DCMAKE_BUILD_TYPE=Release ..② 编译过程中出现的错误
错误如图所示,这是因为依赖项版本不兼容的问题。报错提示所需要的openssl版本是1.0.0。但是本机已经存在其他版本的openssl,因此要先删除原来的版本并重新安装1.0.0版本的openssl。
1、先查看下当前是哪个版本的openssl
# 查看当前openssl版本
$ openssl version
OpenSSL 1.0.2g 1 Mar 2016anaconda自带的openssl好好像会有冲突,所以也要注释掉anaconda的环境变量。
2、可以看到当前版本是1.0.2, 因此先将原来的版本卸载
# 卸载openssl
$ sudo apt remove openssl3、重新安装openssl1.0.0
# 官网下载源码
wget https://www.openssl.org/source/old/1.0.0/openssl-1.0.0s.tar.gz
# 解压
tar xvf openssl-1.0.0s.tar.gz
# 进入目录
cd openssl-1.0.0s
# 运行可执行脚本并指定安装路径
./config --prefix=安装路径
# 编译
make -j8
# 安装
make install4、进入build文件夹重新编译
make clean
make -j8参考链接:
① http://www.pointclouds.org/documentation/tutorials/compiling_pcl_posix.php
版权声明:本文为ChanKi_原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。