[编译]ORB_SLAM的ROS编译

问题:

1.ModuleNotFoundError: No module named 'rospkg'

[编译]ORB_SLAM的ROS编译_第1张图片

问题分析:在网上搜了很多资料,有两种:

1) pip install rospkg

但是提示python2.7不在维护信息,然后重新编译没成功

[编译]ORB_SLAM的ROS编译_第2张图片

2)可能是由于ros和python3冲突导致的,需要切换python版本

〜/ .bashrc添加环境变量:

export PYTHONPATH=$PYTHONPATH:/usr/lib/python2.7/dist-packages

还是失败。

3)我重新定位了下这个包,发现在/usr/lib/python2.7/dist-packages下有这个包,而在/opt/ros/kinetic/lib/python2.7/dist-packages下没有,于是通过命令创建软连接:

sudo ln -s /usr/lib/python2.7/dist-packages/catkin_pkg /opt/ros/kinetic/lib/python2.7/dist-packages/catkin_pkg

成功了。

2.ModuleNotFoundError: No module named 'catkin_pkg'

[编译]ORB_SLAM的ROS编译_第3张图片

采用和上面一样的方式。

3.undefined reference to symbol '_ZN5boost6system15system_categoryEv'

[编译]ORB_SLAM的ROS编译_第4张图片

在Example/ROS/ORB-SLAM2/目录下的CMakelist.txt文件添加:

find_package(Boost COMPONENTS system) #这一行
 
include_directories(
${Boost_INCLUDE_DIRS}                 #这一行
)
 
set(LIBS
${Boost_LIBRARIES}                    #这一行
)

4.成功编译

[编译]ORB_SLAM的ROS编译_第5张图片

你可能感兴趣的:(环境配置)