ROS2路径问题

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


问题介绍

提示:这里可以添加本文要记录的大概内容:

——最近学习ROS2,在学习过程中遇到了一个非常难搞的BUG,在创建自己的msg与srv的时候报错(作者用的是windows11下VMware虚拟机安装Ubuntu22.04,ROS2版本为Jazzy)

目录框架:

请添加图片描述

报错如下:

lqc@lqc-VMware-Virtual-Platform:~/桌面/ros2_ws$ colcon build --packages-select my_robot_interfaces
Starting >>> my_robot_interfaces
--- stderr: my_robot_interfaces                           
CMake Error at /opt/ros/jazzy/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:234 (list):
  list index: 1 out of range (-1, 0)
Call Stack (most recent call first):
  CMakeLists.txt:12 (rosidl_generate_interfaces)

CMake Error at /opt/ros/jazzy/share/rosidl_generator_type_description/cmake/rosidl_generator_type_description_generate_interfaces.cmake:68 (message):
  Target dependency
  '/ros2_ws/build/my_robot_interfaces/rosidl_adapter/my_robot_interfaces/msg/HardwareStatus.idl'
  does not exist
Call Stack (most recent call first):
  /opt/ros/jazzy/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /opt/ros/jazzy/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:280 (ament_execute_extensions)
  CMakeLists.txt:12 (rosidl_generate_interfaces)


---
Failed   <<< my_robot_interfaces [10.5s, exited with code 1]

Summary: 0 packages finished [10.6s]
  1 package failed: my_robot_interfaces
  1 package had stderr output: my_robot_interfaces

提示:以下是本篇文章正文内容,下面案例可供参考

解决方案

主要出现问题的地方是:

list index: 1 out of range (-1, 0)

——读了下cmake的代码,主要问题是无法读取目录位置,少了一位,结合我的文件夹目录,我大概猜出来是“桌面”这个中文报错的问题。

请添加图片描述

——将目录直接移动到主目录下(或者移动到没有中文路径的文件夹也可),问题顺利解决。

lqc@lqc-VMware-Virtual-Platform:~/ros2_ws$ colcon build --packages-select my_robot_interfaces
Starting >>> my_robot_interfaces
Finished <<< my_robot_interfaces [0.58s]                     

Summary: 1 package finished [0.72s]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值