【ROS】创建Publisher和Subscriber过程中遇到的问题和解决方案

Tutorial链接:http://wiki.ros.org/ROS/Tutorials/WritingPublisherSubscriber%28c%2B%2B%29

1. 写好并保存好了talker.cpp和listener.cpp却无法创建

  • 检查~/catkin_ws/src/beginner_tutorials里面的CMakeLists.txt,如果没有以下内容则将他们添加到最后:
add_executable(talker src/talker.cpp)
target_link_libraries(talker ${catkin_LIBRARIES})
add_dependencies(talker beginner_tutorials_generate_messages_cpp)

add_executable(listener src/listener.cpp)
target_link_libraries(listener ${catkin_LIBRARIES})
add_dependencies(listener beginner_tutorials_generate_messages_cpp)

2. 成功创建后新窗口执行rosrun beginner_tutorials talker却发现以下提示错误:[rosrun]Couldn't find executable named talker below /home/<username>/catkin_ws/src/beginner_tutorials

  • 原因在于catkin_make编译出来的可执行文件在~/catkin_ws/devel/lib/beginner_tutorials里面,所以要在新打开的窗口内执行以下命令让ros找到你想执行的文件 (注意!每次打开新窗口都要先执行“source”那一行
cd ~/catkin_ws
source ./devel/setup.bash
rosrun beginner_tutorials talker

猜你喜欢

转载自blog.csdn.net/u013541048/article/details/81843041