ubuntu16.04下安装pcl1.8遇到的问题

ubuntu16.04下安装pcl1.8遇到的各种问题

系统是Ubuntu16.04。记录一下最近遇到的各种坑

在接手师兄的code时,catkin_make失败,说是需要用到libpclcommon.so。查了一下是因为没有安装pcl,所以研究了一下

首先是PCL的安装

这个真是坑比较多,网上的方法基本上都是千篇一律。主要是版本的问题。之前安装ROS的时候,自带的有PCL1.7。但是因为版本低,缺少很多有用的东西。

后来是选择使用了pcl1.8,都说是比较稳定好用。再高版本的可能各种bug比较多。

安装pcl的方法主要分为两类:

  • 各种指令一顿输入,啥也不管,最后完事。看似安装好了,结果不能用。(不推荐)

  • 老老实实下载了pcl,然后解压,make,make install等。

下面介绍这种方法:(亲测可用)

版本:pcl-1.8.1,需要先安装VTK-7.1.1

  1. 先安装各种依赖,这些网上一搜也一大堆:

    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 libboost-all-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 libopenni-dev libopenni2-dev

    sudo apt-get install libx11-dev libxext-dev libxtst-dev libxrender-dev

    sudo apt-get install libxmu-dev libxmuu-dev

    sudo apt-get install build-essential libgl1-mesa-dev libglu1-mesa-dev

  2. 将两个安装包都解压缩:

    网上有很多是:sudo unzip VTK-7.1.1.zip和sudo unzip pcl-1.8.1.zip。但是我unzip之后,文件就在/下载 的目录下了,后来make出现了问题。所以我选择使用了右键提取此处,然后剪切到了/home路径下,再进行的后列操作。

  3. 编译安装VTK

    cd VTK-7.1.1

    mkdir build && cd build

    cmake …

    cmake-gui ###操作见下面文字###

    make

    sudo make install

    勾选“VTK_GROUP_QT”,改“VTK_QT_VERSION” = 5(图中绿色的部分),点击Configure,generate
    ubuntu16.04下安装pcl1.8遇到的问题_第1张图片

    (图中蓝色部分是点击generate后生成的,就是因为勾选了QT,又有VERSION=5,所以生成了QT5,在后面安装pcl的时候会用到)

“VTK_QT_VERSION” = 5的操作是:点Add_Entry,然后有下图的操作
ubuntu16.04下安装pcl1.8遇到的问题_第2张图片

  1. 编译安装PCL

    cd pcl-1.8.1

    mkdir build && cd build

    cmake …

    cmake-gui ###操作见下面文字###

    make -j4

    sudo make install

    检查Qt5的路径,检查vtk版本,选择openni2,点击Configure,generate
    ubuntu16.04下安装pcl1.8遇到的问题_第3张图片

主要参考链接:https://www.jianshu.com/p/548234bb88fc

======后续问题=

上面pcl1.8确实安装完毕了。但是后来catkin_make的时候,又出现了,没有pcl_ros和pcl_conversion

查了一下,都说是pcl1.7的有,但是pcl1.8的没有,高版本的也没有。不太懂为啥,明明很有用。但是我在本机上查了一下,也没有找到pcl1.7里带有这两个文件。无奈只好再单独安装下载了

下载链接:https://github.com/ros-perception/perception_pcl

解压后发现文件里有pcl_ros和pcl_conversion两个文件。经查询处理方式如下:

在/home文件夹下又新建了一个ros_ws文件夹,在该文件夹下创建src,将pcl_ros和pcl_conversion两个文件复制到src里。

然后在ros_ws路径下,打开终端,执行以下命令:

  • sudo su
  • source /opt/ros/kinetic/setup.bash
  • catkin_make install --cmake-args -DCMAKE_INSTALL_PREFIX=/opt/ros/kinetic

主要参考链接:https://blog.csdn.net/u010838619/article/details/108422040

备注:

在搜到的各种解决方案中,描述的都很复杂,要进行各种操作,反正我现在这么搞,编译什么的是都通过了,也不知道以后会不会遇到什么问题。等有了再更新,大家有遇到什么问题,可以一起在讨论区讨论。我也是小白,刚开始接触这些东西

你可能感兴趣的:(ubuntu,linux,其他,自动驾驶)