Ubuntu18.04安装PCL(详细教程)

Ubuntu18.04安装PCL(详细教程)

Ubuntu18.04安装PCL

Ubuntu18.04安装ROS的版本为ros-melodic
Ubuntu16.04安装ROS的版本为ros-kinetic

下面介绍Ubuntu18.04下安装ros-melodic
(跟着步骤,一步一步走)

安装依赖

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 libvtk7.1-qt libvtk7.1 libvtk7-qt-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 openjdk-8-jdk openjdk-8-jre

ubuntu18.04libtk已经从网上说的5.10版本变成了7.10。当然随着时间的退役7.10也会被舍弃,这时我们要用到

sudo apt-cache search libvtk

我们用这行命令去搜索libtk的最新版本。
ubuntu18.04qt-sdk已经被舍弃,亲身测试不需要安装。


下载编译

下载就不用说了,这是网址https://github.com/PointCloudLibrary/pcl.git ,可手动下载也可用git下载

git clone https://github.com/PointCloudLibrary/pcl.git 

接下来进行编译

cd pcl 
mkdir release 
cd release
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX=/usr \ -DBUILD_GPU=ON-DBUILD_apps=ON -DBUILD_examples=ON \ -DCMAKE_INSTALL_PREFIX=/usr .. 
make  

等待漫长的编译之后

sudo make install

验证PCL是否安装成功

按照以上步骤直接生成.cpp文件运行会发现找不到头文件,原因是需要使用Cmake 编译(包括连接到PCL库等)
具体操作直接参照官网(http://pointclouds.org/documentation/tutorials/using_pcl_pcl_config.php#using-pcl-pcl-config
步骤包括:
(1).在project 文件夹下生成 pcd_write.cpp(见官网上提供的链接)
(2).生成 CMakeLists.txt,直接复制一下内容(不需要任何修改):

cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(MY_GRAND_PROJECT)
find_package(PCL 1.3 REQUIRED COMPONENTS common io)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_executable(pcd_write_test pcd_write.cpp)
target_link_libraries(pcd_write_test ${PCL_COMMON_LIBRARIES} ${PCL_IO_LIBRARIES})

然后编译运行

cd /PATH/TO/MY/GRAND/PROJECT (project 所在的文件夹)
mkdir build
cd build
cmake ..
make
./pcd_write_test

安装完成,尽情享受PCL的魅力吧。


PCL卸载

卸载有问题的PCL1.7vtk bug等等,例如:不能显示深度图)

(这里描述的pcl1.7,具体版本请查看自己安装的对应版本)

sudo rm -r build
sudo rm -r /usr/include/pcl-1.7 /usr/share/pcl /usr/bin/pcl* /usr/lib/libpcl*

执行上述命令, 上述四个目录中,可能会找不到某些目录。可以自己去 usr 目录下搜索 关键字 pcl 或者 libpcl。本人在目录 /usr/libx86_64-linux-gnu 下找到 相关libpcl*文件,删除即可,删除命令同上。


致谢:

https://blog.csdn.net/qq_40022890/article/details/100786946
https://www.cnblogs.com/winslam/p/12074432.html
https://www.cnblogs.com/lifeofershisui/p/9037829.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2155.html原文链接:https://javaforall.net

(1)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java类加载,getClassLoader()

    Java类加载,getClassLoader()转自【java类加载的深入研究1】loadClass()的研究,IBM深入探讨Java类加载器类加载器基本概念顾名思义,类加载器(classloader)用来加载Java类到Java虚拟机中。一般来说,Java虚拟机使用Java类的方式如下:Java源程序(.java文件)在经过Java编译器编译之后就被转换成Java字节代码(.class文件)。类加载…

    2022年5月27日
    30
  • nginx实现https网站设置(SSL证书生成配置)

    nginx实现https网站设置(SSL证书生成配置)

    2021年6月2日
    87
  • leetcode-11盛最多水的容器「建议收藏」

    leetcode-11盛最多水的容器「建议收藏」原题链接给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。示例 2:输入:he

    2022年8月8日
    2
  • 关于服务器安装docker后无法ping通内网

    关于服务器安装docker后无法ping通内网

    2021年6月1日
    116
  • JodaTime时间处理工具使用详解

    JodaTime时间处理工具使用详解工作中经常用到java日期类型Date、Calendar或SimpleDateFormat,但是这些日期工具类要么提供了过期的方法(Date),要么就是功能不够强大。最近突然用到了Joda-Time日期工具,发现非常好用,就撰写此文,以便学习和交流。

    2022年6月17日
    26
  • linux移动文件到另一个文件夹「建议收藏」

    linux移动文件到另一个文件夹「建议收藏」复制指定目录下的全部文件到另一个目录中1.文件及目录的复制是经常要用到的。linux下进行复制的命令为cp。假设复制源目录为dir1,目标目录为dir2。怎样才能将dir1下所有文件复制到dir2下了如果dir2目录不存在,则可以直接使用cp-rdir1dir2即可。如果dir2目录已存在,则需要使用cp-rdir1/.dir2例://没有publicData…

    2022年8月23日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号