ubuntu 16.04
PCL官網有提供deb安裝文件,直接就可以安裝。但不知道爲什麼clion一直找不到pcl的庫。然後apt-get install libpcl-dev又沒有visualization庫,所以只好源碼安裝了。
安裝過程中會遇到libpq的一個問題:
//usr/lib/libpq.so.5: undefined reference to `SSL_CTX_new@OPENSSL_1.0.0'
//usr/lib/libpq.so.5: undefined reference to `SSL_CTX_get_cert_store@OPENSSL_1.0.0'
這個是conda(如果安裝了conda的話)引起的,將conda路徑從系統路徑(~/.bashrc 或者/etc/profile裏面刪去相關路徑)去除就行,可以用echo $PATH 命令查看是否去除。
還有一個需要注意的是,最好不要自己源碼安裝QT和VTK,可能會有衝突。
安裝過程:
先安裝依賴,其中包括了qt和vtk:
sudo apt-get update
sudo apt-get install libopenni-dev
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
克隆pcl源碼,並安裝:
git clone https://github.com/PointCloudLibrary/pcl.git pcl-trunk
ln -s pcl-trunk pcl
mkdir release
cd release
cmake -DCMAKE_BUILD_TYPE=None -DBUILD_GPU=ON -DBUILD_apps=ON -DBUILD_examples=ON ..
make -j4
#-DBUILD_GPU=ON GPU支持,沒有GPU的可以去掉。
sudo make install
安裝好PCL後,就可以在自己的項目中使用了。不過可能會出現VTK一些東西找不到,因此把VTK卸載了重裝:
卸載:
sudo apt-get remove libvtk5.10 #因爲上面安裝的是5.10的版本
安裝:
wget http://www.vtk.org/files/release/7.1/VTK-7.1.0.tar.gz
tar -xf VTK-7.1.0.tar.gz
cd VTK-7.1.0 && mkdir build && cd build
cmake ..
make
sudo make install