ROS 删除自己编译的包

文章讲述了在ROS环境中,通过catkin_ws编译amcl代码后,导致系统使用自编译版本而非apt安装的版本。作者尝试删除相关文件夹以恢复到apt安装的amcl,最终发现需要清除catkin_ws/devel/lib和share中的amcl文件夹来实现。同时,文章提到了可能需要处理的其他文件,如CMakeCache.txt和pkgconfig文件,但未确认是否必要。

过程

之前在看amcl的代码,将代码下载到catkin_ws文件夹里面修改编译,发现启动amcl时就会直接使用catkin_ws文件夹里面修改过的amcl文件,而不用去卸载掉通过apt安装的amcl。后来想再用回通过apt装的amcl文件(不知道为什么就算不修改直接编译下载的amcl代码,生成的amcl文件会比直接下载的大),就想着直接删掉自己编译生成的amcl文件就可以了,结果再启动amcl文件一直提示ERROR: cannot launch node of type [amcl/amcl]: Cannot locate node of type [amcl] in package [amcl]

错误提示
然后就找catkin_ws文件夹下面哪里还有amcl相关的没有删掉。
先是catkin_ws/build下面的CMakeCache.txt记录了一些amcl的路径:

CMakeCache文件
全删掉没有效果。
就想着可能是环境变量记录了,然后去看catkin_ws/devel里面的setup.bash,最后发现catkin_ws/devel/lib/pkgconfig文件夹下面有包的配置文件,把amcl的配置文件也删了,但还是没用。
最后在catkin_ws/devel/share文件夹中发现还有amcl的文件夹,里面的config文件看着应该就是导致优先在catkin_ws文件夹查找包的原因,删掉重新catkin_make,终于用回安装的包了。

amclConfig.cmake文件

结论

所以应该是删掉catkin_ws/devel里面的lib和share文件夹中的amcl文件夹。
不确定需不需要处理CMakeCache.txt和删掉catkin_ws/devel/lib/pkgconfig/amcl.pc;
也不知道还有什么其它的遗漏的关于amcl的配置文件没有修改或删除(经过搜索还有catkin_ws/build文件夹下的amcl文件夹);
又或者其实有命令可以直接去清理掉某个包,但我并没有找到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值