ROS报错:缺少 manipulation-msgs与household msgs

古月marm_planning是根据kinetic版本编写,移植到melodic会报错,按照顺序如下两种。

-- ==> add_subdirectory(marm_planning)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Could NOT find manipulation_msgs (missing: manipulation_msgs_DIR)
-- 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/melodic/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

  Add the installation prefix of "manipulation_msgs" to CMAKE_PREFIX_PATH or
  set "manipulation_msgs_DIR" to a directory containing one of the above
  files.  If "manipulation_msgs" provides a separate development package or
  SDK, be sure it has been installed.
Call Stack (most recent call first):
  marm_planning/CMakeLists.txt:10 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/ghh/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/ghh/catkin_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

缺少包,名字已经在报错中。

    manipulation_msgsConfig.cmake
    manipulation_msgs-config.cmake

解决方案:注意是melodic版本的解决方案!!!

方法一:

进入src文件夹把所需工具包克隆进去,不推荐因为常常因为网络以及其他原因报错,

git clone https://github.com/ros-interactive-manipulation/manipulation_msgs.git
正克隆到 'manipulation_msgs'...
fatal: unable to access 'https://github.com/ros-interactive-manipulation/manipulation_msgs.git/': Failed to connect to github.com port 443: 拒绝连接

方法二:

手动克隆,这种方法可控性强,效率高。

https://github.com/ros-interactive-manipulation/manipulation_msgs/

进入网站下载

下载后去掉后缀!复制到src中,并解压。结果与之前的命令行克隆效果一样,但是网站等不等上去,能不能下载,都是可控的。

 好不容易下载好,编译后,有报错了!!!这次是编译刚才下载好的包,发现又缺别的包。

-- ==> add_subdirectory(manipulation_msgs)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Could NOT find household_objects_database_msgs (missing: household_objects_database_msgs_DIR)
-- Could not find the required component 'household_objects_database_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/melodic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
  Could not find a package configuration file provided by
  "household_objects_database_msgs" with any of the following names:

    household_objects_database_msgsConfig.cmake
    household_objects_database_msgs-config.cmake

  Add the installation prefix of "household_objects_database_msgs" to
  CMAKE_PREFIX_PATH or set "household_objects_database_msgs_DIR" to a
  directory containing one of the above files.  If
  "household_objects_database_msgs" provides a separate development package
  or SDK, be sure it has been installed.
Call Stack (most recent call first):
  manipulation_msgs/CMakeLists.txt:13 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/ghh/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/ghh/catkin_ws/build/CMakeFiles/CMakeError.log".
Invoking "cmake" failed

缺少的包名字在报错中已有提示

    household_objects_database_msgsConfig.cmake
    household_objects_database_msgs-config.cmake

如法炮制,方法一:

git clone https://github.com/ros-interactive-manipulation/household_objects_database

失败!

fatal: unable to access 'https://github.com/ros-interactive-manipulation/household_objects_database/': Failed to connect to github.com port 443: 拒绝连接

方法二:手动克隆

进入网址

https://github.com/ros-interactive-manipulation/household_objects_database_msgs

注意网址不要进错,包不要下载错。

下载,改名,到src,解压,编译。同样的步骤不在赘述。

问题解决。

未知问题是编译后把下载的包安装文件删除会不会导致报错。由于已经编译好了,删除工具包,虽然没有报错,但是与之前没有编译好的情况不同,故这次没报错没有参考价值。 

  • 12
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: ros-melodic-can-msgs 是一个 ROS 包,用于在 ROS 中使用和操作 Controller Area Network (CAN) 协议进行通信。其中包含了相关的消息和服务类型,用于在 ROS 系统中传输 CAN 相关的数据。你可以在这里找到 ros-melodic-can-msgs 的源代码:https://github.com/ros-drivers/can_msgs ros-melodic-can-msgs 是针对 ROS Melodic 版本开发的,Melodic 是 ROS 的一个发行版本。如果你正在使用其他版本的 ROS,你需要使用对应版本的 ros-can-msgs 包。 ### 回答2: ros-melodic-can-msgsROS(机器人操作系统)的一个软件包,它是用于CAN(控制器局域网络)通信的消息定义和工具。CAN是一种常用于车辆和其他实时控制系统中的网络通信协议。 这个软件包包含了一些重要的消息类型,用于在ROS中进行CAN数据的传输和解析。例如,它定义了CAN消息的ID、数据格式和长度等信息。这些消息类型可以让ROS系统和连接在CAN总线上的设备进行通信。 在ros-melodic-can-msgs源码中,我们可以看到定义了各种用于CAN通信的消息类型,比如CAN_Frame、CAN_FD_Frame和CAN_Error等。这些消息类型可以用于接收和发送CAN数据,并且还包括了一些附加的属性,比如时间戳等。 此外,源码中还提供了一些工具和函数,用于CAN数据的解析和处理。例如,它提供了一个解析CAN帧的函数,可以从CAN消息中提取数据和控制信息。同时,还可以将ROS中的消息转换为CAN消息,并将CAN消息转换为ROS消息,方便在ROS系统中使用CAN数据。 总之,ros-melodic-can-msgs是一个用于CAN通信的ROS软件包,提供了消息定义和工具,用于在ROS系统中处理和交换CAN数据。通过使用这个软件包,开发人员可以方便地使用ROS构建与CAN设备之间的通信,实现车辆控制和实时系统的开发。 ### 回答3: ros-melodic-can-msgsROS的一个软件包,用于处理Controller Area Network(CAN)通信协议的消息。这个软件包提供了在ROS系统中处理CAN消息的功能。 CAN是一种广泛应用于汽车、工业控制和机器人等领域的通信协议,它允许不同的设备通过总线共享数据。ros-melodic-can-msgs软件包的目的是为ROS系统添加对CAN通信的支持。 这个软件包包含了一系列的消息类型,用于定义在ROS系统中传输CAN消息。这些消息类型包括CAN帧消息类型、CAN控制器状态消息类型以及一些其他辅助消息类型。通过这些消息类型,ROS系统可以接收和发送CAN消息,实现与CAN总线上其他设备的通信。 除了消息类型,ros-melodic-can-msgs还提供了一些辅助工具和函数,用于处理CAN消息。这些工具和函数可以用于解析CAN帧消息、生成CAN帧消息以及读取和修改CAN控制器的状态。 使用ros-melodic-can-msgs,开发者可以将CAN通信集成到ROS系统中。他们可以通过订阅CAN消息话题来接收其他设备发送的CAN消息,并可以通过发布CAN消息话题来向其他设备发送CAN消息。这样,开发者可以方便地与CAN总线上的其他设备进行数据交换,并能够利用ROS系统提供的各种功能进行数据处理和分析。 总之,ros-melodic-can-msgs是一个在ROS系统中处理CAN通信的软件包,它提供了一系列的消息类型、工具和函数,使得开发者可以方便地与CAN总线上的设备进行数据交换和通信。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值