2018-11-09[rosrun] Couldn't find
今天运行ROS时出现几个奇怪的问题:
背景介绍:
我的工作空间:~/Disk/ros_robotics_projects_ws
ros的安装路径:/opt/ros/kinetic/share
我在/opt/ros/kinetic/share
路径下确定是成功安装了turtlesim
以及rosserial_python
这个包的,但是当我在终端中输入:
rosrun rosserial_python rosserial_node
总是提示:[rosrun] Couldn't find executable named serial_node.py below /opt/ros/kinetic/share/rosserial_python
运行rosrun turtlesim turtlesim_node
时也是找不到可执行文件。
我反复检查了环境变量确定是包括了~/Disk/ros_robotics_projects_ws
和/opt/ros/kinetic/share
是没有问题的,但是还是一直出现这样的情况。
接下来做了这样的排查:
1、我将turtlesim这个包移到自己的工作空间中,编译之后rosrun turtlesim turtlesim_node
没有问题
2、当我将turtlesim
这个包从我的工作空间移出,环境变量设置/opt/ros/kinetic/share
在运行这个包的节点还是会有毛病。
找了很久原因还是不得其解,期间搜索了网上相关的提问,其中有一个答案给我一点启发:https://github.com/ros-drivers/rosserial/issues/220
突然想起来自己这边的问题好像也是从我拷贝过这两个包之后出现的,于是将我工作空间中除了src
文件夹中的文件全部删除,重新编译,问题解决了,应该是之前编译那两个拷贝过来的功能包时有些残留的文件导致系统识别错误。