Ubuntu18.04_PCL1.9库安装

高翔SLAM14讲中的

sudo apt-get install libpcl-dev pcl-tools

命令并不能一键安装解千愁,于是开始排坑之路。请严格按照以下安装顺序进行安装。

安装Qt5

Qt官网下载
文件名称:qt-unified-linux-x64-4.4.1-online.run
下载完成在该文件夹下终端输入:

sudo chmod u+x qt-unified-linux-x64-4.4.1-online.run
sudo ./qt-unified-linux-x64-4.4.1-online.run

在线注册账号,并下载安装。(注册后别忘了去注册邮箱确认,否则无法登陆安装)

安装X11

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

安装OpenGL

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

安装glut

sudo apt-get install freeglut3-dev

安装VTK

官网下载VTK-8.2.0.zip

#解压并进入
mkdir build && cd build
cmake ..
sudo make
sudo make install

安装clang-format

sudo apt-get install clang-format-10

安装HDF5

文件名:hdf5-1.12.2.tar.gz
HDF5官网
Attention: 解压文件并进入后从大神安装笔记第“4”步开始执行

安装flann

flann1.9.1_github
Attention: 编译过程中会报错,大神的解决方案

#解压并进入
mkdir build && cd build
#	有些教程会在cmake后加入prefix语句,实测不用加入否则在pcl库编译时会报
#	could NOT find FLANN...的错误,
#	如果按照下面的方式依旧报错,请将解压后的文件放入home文件下编译。
cmake ..
sudo make
sudo make install

安装usb1.0库

sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev

安装metslib

wget https://www.coin-or.org/download/source/metslib/metslib-0.5.3.tgz
tar xzvf metslib-0.5.3.tgz
cd metslib-0.5.3
./configure
make -j`nproc`
sudo make install

安装其他库

sudo apt install libqhull-dev libpcap-dev
sudo apt install libboost-all-dev

安装PCL

PCL1.9.1_github下载
解压后放置在home文件下。

cd pcl
mkdir build
cd build
cmake ..
#	attention!!!
#	make -j or -j2会报compiler error,估计是分配的资源不够导致。
#	make -j4会卡死崩溃。
#	make -j3成功。电脑型号为:联想邵阳E49
make -j3
sudo make -j3 install

可能报的错误

1.error: could not create '/usr/local/lib/python2.7/…

解决方法:

sudo chown -R $USER /usr/local

大佬的参考

2.octree_base_node.hpp:544:29: error: ISO C++ forbids comparison between pointer and integer [-fpermissive]

解决方法:
1.找到报错文件夹下的找到octree_base_node.hpp,将报错行的"children_[i] == false"改成"!children_[i]"
2.进入pcl源代码文件夹 /pcl-pcl-1.7.2/registration/include/pcl/registration/,寻找这两个文件correspondence_estimation_backprojection.h 和correspondence_estimation_normal_shooting.h,将 inline void getKSearch () const { return (k_); } 换成 inline int getKSearch () const { return (k_); }
大佬以及评论区的解答

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值