Roboware新建python节点后在rosrun找不到该节点

Roboware新建python节点后在rosrun找不到该节点(按TAB键)

问题描述(可忽略直接看解决办法)

今天在用Roboware新建ROS测试节点,创建完功能包之后,我先是添加了C++节点,Roboware会自动创建一个publish和subscribe节点(test_pub.cpp和test_sub.cpp),会发送hello world消息,可以正常运行。但是我用同样的方法又新建一个python节点之后同样生成了test_pub.py和test_sub.py两个文件,cmake也正常,但是执行rosrun按TAB当时就找不到创建的python节点,自己输入完整的功能包名和节点名之后不出所料的报错如下:

[rosrun] Couldn't find executable named testpy_pub.py below /home/lenovo/Desktop/robot_1/src/testpy
[rosrun] Found the following, but they're either not files,
[rosrun] or not executable:
[rosrun]   /home/lenovo/Desktop/robot_1/src/testpy/src/testpy_pub.py

或者

[rosrun] Couldn't find executable named testpy_pub below /home/lenovo/Desktop/robot_1/src/testpy

问题所在和解决办法:

找不到节点的原因是因为.py文件没有执行权限(虽然我不知道为什么cpp文件不需要权限,感觉是因为python是解释性语言需要执行权限去执行,而cpp本身是不需要执行的,而是去编译链接)
所以解决办法就是去cd 工程所在目录/src/功能包名/src,这里就是节点所在目录,给两个文件添加执行权限chmod a+x testpy*(我的节点名是testpy_sub.py和testpy_pub.py)就可以了。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值