二、PCL安装踩坑总结(Ubuntu 16.4+PCL1.8.1+VTK7.1+Qt5.9.9)
问题解决暂未更完、、、
文章目录
- 二、PCL安装踩坑总结(Ubuntu 16.4+PCL1.8.1+VTK7.1+Qt5.9.9)
-
- 一、写在前面
- 二、安装过程
- 三、遇到的问题及解决
-
- 1.问题1及其解决:Makefile:149: recipe for target ‘all’ failed
- 2.问题2及其解决:fatal error: pcl/visualization/pcl_visualizer.h
- 3.问题3及其解决:安装VTK时CMAKE中找不到Qt5路径
- 4.问题4及其解决:ubuntu16.04下qt4切换程qt5(由问题三引出,顺便解决)
- 5.问题5及其解决:/usr/lib/../lib64/libSM.so: undefined reference to 'uuid_unparse_lower@UUID_1.0' /usr/lib/../lib64/libSM.so: undefined reference to 'uuid_generate@UUID_1.0'
毕设相关,装一下PCL库。听说官网推荐的安装方法不很稳定,以及看到【最简易的PCL安装方法(ubuntu16.04系统)】,想都没想,别人我不知道能不能一次成功,我肯定是不得行的(果然装了无数遍),老老实实编译源码。
一、写在前面
- 安装经历:
台式机(有anaconda环境,许多依赖文件和库与PCL中冲突,比较难搞)、笔记本。
都是Ubuntu 16.4+PCL1.8.1+VTK7.1+Qt5.9.9。
#官网推荐安装方法
sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl
sudo apt-get update
sudo apt-get install libpcl-all
每次装什么软件我都抱着殊死一搏的勇气(因为总能把各种问题集结个遍、、手动狗头)。搜了一些教程贴,感觉,也很easy嘛,也就安装的依赖项多了些、时间长了些、、naive!!too naive!!!
- 先总结:
| 成功栗子 | PCL1.8.1+VTK7.1.1+Qt5.9.9 | |
|-------|:—😐-----------|-------😐
|失败栗子 |PCL1.11.1+VTK5.10.1+Qt4.8.2 | PCL1.11.1+VTK6.2.0+Qt5.9.9 |
| PCL1.11.1+VTK8.2.1+Qt5.9.9 | PCL1.11.1+VTK7.1.1+Qt4.8.2 |PCL1.8.1+VTK6.2.1+Qt5.9.9 |
期间试错无数,以为少了某些依赖,其实就是PCL和VTK的版本没对上,强推一波在笔记本上最终安装的成功教程《Ubuntu16上安装PCL》。
【师兄说1.9以上版本可能不太稳定,考虑到课题组内部工作的衔接方便,就从1.11.1改成了1.8.1版本。想装什么版本根据自己需要随意哈~】
正确搭配 | PCL-1.7.2 + VTK-5.10.1 / VTK-6.2.0 | PCL-1.8.1 + VTK-7.1.1 | PCL-1.9.1 + VTK-8.2.0 |
---|---|---|---|
Qt主版本需要5以上(ubuntu16.04自带4.8.7版本) |
- 下载地址:
官网选择合适的Qt版本下载:http://download.qt.io/archive/qt/
官网选择合适的VTK版本下载:https://vtk.org/download/
官网选择合适的PCL版本下载:https://github.com/PointCloudLibrary/pcl/releases
(先放链接,具体安装见下文详述)
二、安装过程
总结发现有两种方法
1.VTK放在依赖项中安装
先搜了一下安装教程,《Ubuntu16.04 安装配置 PCL1.9》和《Ubuntu16.04下PCL库的安装与测试》,先向大佬致谢!(以上尝试失败)
- 安装依赖项(以上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
#(实现可视化需要更新的vtk版本,可以使用sudo apt-get install libvtk + Tab 补全查找自己需要的版本。
#建议sudo apt-get install libvtk6.2 libvtk6.2-qt libvtk6-dev,安装主版本6以上的,vtk关系到PCL可视化模块的使用)
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上下载PCL源码
git clone https://github.com/PointCloudLibrary/pcl.git
#特别提示:直接git默认下载最新版本的,当前时间节点下我下载得到了1.11.1版本,跟依赖中的VTK版本是不匹配的,导致安装失败。
#建议在官网选择需要安装的版本,并匹配正确的VTK和Qt。
- 编译:(各个帖子都提醒这一步很漫长,可我并没觉得很漫长,肉眼可见地编译完了,还悄悄地喜滋滋~~呔!)
cd pcl
mkdir release
cd release
cmake -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_PREFIX