ubuntu16.04安装PCL
1.安裝最新的cmake版本
下載地址https://cmake.org/download/
解壓 tar -xzvf?cmake-3.18.1.tar.gz
cd?cmake-3.18.1
./booststarp
make -j4
sudo make install
?
2安裝依賴項
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-jre3.下載
git clone?https://github.com/PointCloudLibrary/pcl.git?或下載.zip
3) 編譯安裝
解壓完成后進入pcl目錄
cd pcl
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr?-DBUILD_GPU=ON -DBUILD_apps=ON -DBUILD_examples=ON?-DCMAKE_INSTALL_PREFIX=/usr ..
make
如果make時報錯: make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libproj.so', needed by 'lib/libpcl_io.so.1.9.1.99'。 停止。CMakeFiles/Makefile2:499: recipe for target 'io/CMakeFiles/pcl_io.dir/all' failed
建立軟連接, 終端中輸入:?sudo ln -s /usr/lib/x86_64-linux-gnu/libproj.so.9 /usr/lib/x86_64-linux-gnu/libproj.so
之后重新make
make成功后, 在終端輸入:?sudo make install
4測試:
3. PCL測試程序
pcl_test.cpp
//------------------------pcl_test.cpp--------------------#include <iostream> #include <pcl/common/common_headers.h> #include <pcl/io/pcd_io.h> #include <pcl/visualization/pcl_visualizer.h> #include <pcl/visualization/cloud_viewer.h> #include <pcl/console/parse.h>int main(int argc, char **argv) {std::cout << "Test PCL !!!" << std::endl;pcl::PointCloud<pcl::PointXYZRGB>::Ptr point_cloud_ptr (new pcl::PointCloud<pcl::PointXYZRGB>);uint8_t r(255), g(15), b(15);for (float z(-1.0); z <= 1.0; z += 0.05){for (float angle(0.0); angle <= 360.0; angle += 5.0){pcl::PointXYZRGB point;point.x = 0.5 * cosf (pcl::deg2rad(angle));point.y = sinf (pcl::deg2rad(angle));point.z = z;uint32_t rgb = (static_cast<uint32_t>(r) << 16 |static_cast<uint32_t>(g) << 8 | static_cast<uint32_t>(b));point.rgb = *reinterpret_cast<float*>(&rgb);point_cloud_ptr->points.push_back (point);}if (z < 0.0){r -= 12;g += 12;}else{g -= 12;b += 12;}}point_cloud_ptr->width = (int) point_cloud_ptr->points.size ();point_cloud_ptr->height = 1;pcl::visualization::CloudViewer viewer ("test");viewer.showCloud(point_cloud_ptr);while (!viewer.wasStopped()){ };return 0; }CMakeLists.txt文件
# cmake needs this line cmake_minimum_required(VERSION 2.8)# Define project name project(pcl_test_project)find_package(PCL 1.9 REQUIRED) include_directories(${PCL_INCLUDE_DIRS}) link_directories(${PCL_LIBRARY_DIRS}) add_definitions(${PCL_DEFINITIONS})add_executable(pcl_test pcl_test.cpp) target_link_libraries (pcl_test ${PCL_LIBRARIES})完成安裝.?
總結
以上是生活随笔為你收集整理的ubuntu16.04安装PCL的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 勤学如春起之苗,不见其增,日有所长!
- 下一篇: Hbase JMX 监控 - Regio