记录在学习古月的《ROS机器人开发实践》的相关问题

记录在学习古月的《ROS机器人开发实践》的相关问题
我的版本 ubuntu16.04 kinetic
直接克隆或下载到你的工作空间

git clone https://github.com/huchunxu/ros_exploring.git

编译
catkin_make
报错

Could not find the required component ‘ecto’. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.

CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by “ecto” with any of
the following names:
ectoConfig.cmake
ecto-config.cmake

缺少ecto组件,安装即可

sudo apt-get install ros-kinetic-ecto 

报错

Could not find the required component 'manipulation_msgs'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "manipulation_msgs"

  with any of the following names:
    manipulation_msgsConfig.cmake
    manipulation_msgs-config.cmake

缺少manipulation_msgs这个包,安装

sudo apt install ros-kinetic-manipulation-msgs 

报错

Could not find the required component 'moveit_ros_perception'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by
  "moveit_ros_perception" with any of the following names:

    moveit_ros_perceptionConfig.cmake
    moveit_ros_perception-config.cmake

同理,缺少moveit_ros_perception这个组件,安装,3秒完事

sudo apt-get install ros-kinetic-moveit-ros-planning-interface

报错

Could not find the required component 'move_base_msgs'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by "move_base_msgs"
  with any of the following names:

    move_base_msgsConfig.cmake
    move_base_msgs-config.cmake

缺少move_base_msgs,在导航包navigation里面

sudo apt-get install ros-kinetic-navigation

报错

 Could not find a package configuration file provided by
  "gazebo_ros_control" with any of the following names:

    gazebo_ros_controlConfig.cmake
    gazebo_ros_control-config.cmake

安装

sudo apt-get install ros-indigo-gazebo-ros-control

持续编译,出错

/usr/bin/ld: 找不到 -lmsc
collect2: error: ld returned 1 exit status
robot_perception/robot_voice/CMakeFiles/tts_subscribe.dir/build.make:113: recipe for target '/home/zyh/gy_ws/devel/lib/robot_voice/tts_subscribe' failed

缺少链接库,根据《ROS机器人开发实践》书中介绍(科大讯飞那一块207页),将科大讯飞库文件拷贝到系统目录下,进入SDK根目录下的libs文件夹,选择相应的架构平台x64/x86,使用命令拷贝。

sudo cp libmsc.so /usr/lib/libmsc.so

心态崩了,还有问题

/home/zyh/gy_ws/build/ros_advanced/dynamic_tutorials/setup_custom_pythonpath.sh: 5: exec: /home/zyh/gy_ws/src/ros_advanced/dynamic_tutorials/cfg/Tutorials.cfg: Permission denied
ros_advanced/dynamic_tutorials/CMakeFiles/dynamic_tutorials_gencfg.dir/build.make:63: recipe for target '/home/zyh/gy_ws/devel/include/dynamic_tutorials/TutorialsConfig.h' failed
make[2]: *** [/home/zyh/gy_ws/devel/include/dynamic_tutorials/TutorialsConfig.h] Error 126
CMakeFiles/Makefile2:3232: recipe for target 'ros_advanced/dynamic_tutorials/CMakeFiles/dynamic_tutorials_gencfg.dir/all' failed
make[1]: *** [ros_advanced/dynamic_tutorials/CMakeFiles/dynamic_tutorials_gencfg.dir/all] Error 2
make[1]: *** 正在等待未完成的任务....

这是权限问题,根据问题找原因。
进入 ros_exploring/ros_advanced/dynamic_tutorials/cfg 文件夹,打开终端。

chmod +x Tutorials.cfg

catkin_make

[100%] Linking CXX executable /home/zyh/gy_ws/devel/lib/action_tutorials/DoDishes_client
[100%] Built target DoDishes_client

开心

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值