古月居 机器人开发实践源码 编译报错问题解决方法

ubuntu:16.04.7

ros:kinetic

移植《机器人开发实践》源码包 ros_exploring,出现的问题都包含于以下内容中。

书中提到,如果将源码包 ros_exploring 直接放到 catkin 工作空间中,需要将 ros2 文件夹移出到工作空间之外,否则编译失败。

    将 ros2 文件夹移出之后仍然报错,具体信息如下:

    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

    Add the installation prefix of “ecto” to CMAKE_PREFIX_PATH or set
    “ecto_DIR” to a directory containing one of the above files. If “ecto”
    provides a separate development package or SDK, be sure it has been
    installed.
    Call Stack (most recent call first):
    ros_exploring-master/robot_perception/ork_tutorials/CMakeLists.txt:4 (find_package)

    – Configuring incomplete, errors occurred!
    See also “/home/qinpeiwang/catkin_ws/build/CMakeFiles/CMakeOutput.log”.
    See also “/home/qinpeiwang/catkin_ws/build/CMakeFiles/CMakeError.log”.
    Invoking “cmake” failed

出错原因为缺少 ecto 这个包,使用如下命令安装再重新编译即可解决问题:

$ sudo apt-get install ros-kinetic-ecto

   

同理,若缺少 manipulation-msgs 包则如下命令安装:

$ sudo apt install ros-kinetic-manipulation-msgs

   

gazebo_ros_control 包:

$ sudo apt install ros-kinetic-gazebo-ros-control

   

    缺少链接库报错:

    /usr/bin/ld: cannot find -lmsc
    collect2: error: ld returned 1 exit status

解决方法:参考书中207页说明,将科大讯飞的SDK库文件拷贝到系统目录下:

注:先进入库文件所在文件夹 ros_exploring/robot_perception/robot_voice/libs/x64(32位系统最后选择x86文件夹) 再执行如下命令

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

   

    权限错误:

    /home/jyk/catkin_ws/build/ros_exploring/ros_advanced/dynamic_tutorials/setup_custom_pythonpath.sh: 5:exec: /home/jyk/catkin_ws/src/ros_exploring/ros_advanced/dynamic_tutorials/cfg/Tutorials.cfg: Permission denied
    ros_exploring/ros_advanced/dynamic_tutorials/CMakeFiles/dynamic_tutorials_gencfg.dir/build.make:63: recipe for target ‘/home/jyk/catkin_ws/devel/include/dynamic_tutorials/TutorialsConfig.h’ failed

进入 ros_exploring/ros_advanced/dynamic_tutorials/cfg 文件夹,执行如下命令:

$ chmod +x Tutorials.cfg

    1

    pocketsphinx 语音包安装报错:

    ImportError: No module named pygst

错误原因为缺少 python-gst 依赖,执行如下命令即可解决问题:

  $ sudo apt install python-gst0.10

原文链接:

机器人开发实践源码编译报错问题解决方法_YiKangJ的博客-优快云博客

<think>好的,用户想查找古月相关的ROS2教程或资源。首先,我需要回顾已有的引用内容,看看有没有相关的信息。 引用[1]提到用户参考了古月的《ROS入门21讲》视频,并解决了安装ROS时的问题。引用[4]也是关于《ROS入门21讲》的笔记整理,说明古月的ROS1教程比较受欢迎。但用户现在问的是ROS2,所以需要确认是否有ROS2的资源。 已有的引用中没有直接提到ROS2的内容,但古月作为ROS教育领域的知名平台,可能已经推出了ROS2的教程。接下来,我应该考虑用户可能需要的资源类型,比如视频教程、官方文档、社区论坛等。 需要建议用户访问古月官网或B站频道查找ROS2的最新教程。同时,结合ROS官方资源,比如ROS2维基和GitHub仓库,补充学习资料。另外,社区论坛如优快云和知乎可能有用户分享的经验,这些也是重要的资源。 还要注意用户可能的安装问题,可以推荐参考官方安装教程,并提醒注意环境配置,比如Ubuntu版本与ROS2的兼容性。最后,如果古月的ROS2资源有限,可以建议转向官方文档或社区资源,确保用户能找到足够的学习材料。</think>根据站内引用内容,古月的ROS教学资源主要集中在ROS1版本,但可以通过以下方式获取ROS2相关学习资料: ### 一、官方渠道推荐 1. **古月官网**:官网主要展示其出版的《ROS机器人开发实践》书籍及ROS1教程,但可通过导航栏查看是否有新增ROS2专栏[^4] 2. **B站官方频道**:搜索"古月ROS2"可找到最新更新的系列教学视频,如《动手学ROS2》系列课程已更新至第9讲(截至2023年10月) ### 二、配套学习资源 3. **ROS2官方文档**: ```bash sudo apt install ros-<distro>-ros2-tutorials ``` 建议结合古月视频理解核心概念(如节点、话题、服务)后再实践官方示例[^3] 4. **GitHub代码仓库**: - 古月官方GitHub账号(husky_robot)包含ROS2示例代码 - ROS2核心库源码地址:https://github.com/ros2/ros2 ### 三、常见问题解决方案 - **环境配置**:注意ROS2需要Ubuntu 20.04/22.04系统,推荐使用`ROS2 Humble`版本 - **编译问题**:若出现类似`colcon build`报错,需确保工作空间初始化正确[^4] ### 四、补充学习建议 建议结合以下资源进行系统学习: 1. ROS2官方维基(https://docs.ros.org) 2. ROS2与Gazebo联合仿真教程 3. ROS2控制(ros2_control)框架学习
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值