ROS 机器人技术 - 解决不同工作空间存在相同功能包的问题

在ROS中,将一个工作空间的包复制到另一个工作空间时,若未改名会导致系统出现两个相同包并引起错误。解决方法是修改被复制包的配置文件,包括CMakeLists.txt中的项目名和输出文件名,以及package.xml中的包信息。完成修改后重新编译,确保每次复制包时更改包名以避免启动错误。
摘要由CSDN通过智能技术生成

昨天把一个工作空间的 lidar_camera_fusion 包拷贝到另外一个工作空间编译,但是名字没有改变,导致 source后系统存在 2 个 lidar_camera_fusion 包,使用的时候总是错误地启动另外一个。

解决方式:把其中一个包的配置信息改变即可,要改变的文件有

  • CMakeLists.txt
  • package.xml

CMakeLists.txt 中更改项目名和输出的可执行文件名:

project(更换项目名称)

add_executable(更换可执行文件名称
  src/lidar_camera_fusion.cpp
  src/main.cpp)

在 package.xml 中更改包的基本信息,这一步不是必须的,与编译无关,但是最好也改下,毕竟要与这个包本身信息同步,以后别人看或者自己回头修改才不会产生疑惑:

<package format = "2">
    <name> 要修改的包名 </name
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值