红联Linux门户
Linux帮助

ubuntu16.04中安装Kinect v2的ROS接口出错

发布时间:2017-09-26 11:40:35来源:linux网站作者:海大_星
1.在安装libfreenect2成功之后,再安装Kinect v2的ROS接口如下:
cd ~/catkin_ws/src/ 
git clone https://github.com/code-iai/iai_kinect2.git 
cd iai_kinect2 
rosdep install -r --from-paths . 
cd ~/catkin_ws 
catkin_make -DCMAKE_BUILD_TYPE="Release"
 
2.在上述编译过程有一个地方一定会出错,一个地方有时会出错:
出错的地方:rosdep ** ,会出错,但是并不影响后面的调用,官网上好像解释了一下,可以参考
ubuntu16.04中安装Kinect v2的ROS接口出错
不一定出错的地方:catkin_make **,不一定出错是因为看别人的教程都没有说明这个问题,但是我安装编译的时候总是这里过不去,编译在25%的时候就出错返回了,后来一个一个去查看错误提示的时候发现了问题,当然也参考了网上一位热心网友的经验:
出现的问题:
/opt/ros/kinetic/include/opencv-3.2.0-dev/opencv2/flann/saving.h:113:63: error: exception handling disabled, use -fexceptions to enable
throw FLANNException("Invalid index file, cannot read");
解决的办法:
把 iai_kinect2/kinect2_registration/CMakeLists.txt的66行删掉。
出现这个问题的原因:
kinetic版本默认使用的OpenCV-3.2。有一个编译选项在以前版本是没问题的,在opencv-3.2就有点问题。这就是-fexceptions
 
3.附加上一条经验教训:
Ubuntu16.04在重启之后发现桌面上菜单栏都不见了,但是终端还可以调用,想起自己之前安装Ubuntu 美化工具,可能导致桌面启动出现问题,做如下操作即可解决:
// 重设compiz设置
$ dconf reset -f /org/compiz/
// 重置compiz之后,重启unity:
$ setsid unity
 
//*** 就可以恢复原来的界面了***
 
本文永久更新地址:http://www.linuxdiyf.com/linux/32677.html