2016-04-18 2 views
1

Чтобы узнать ROS, я следую Learning ROS for Robotics Programming, но я получил следующее сообщение об ошибке при выполнении rosrun chapter2_tutorials example1_a:Не удалось найти исполняемый файл с именем ниже после rosrun

Couldn't find executable named 'example1_a' below /home/MYNAME/catkin_ws/src/learningROS/chapter2_tutorials 

Однако

  1. этот путь существует в ROS_PACKAGE_PATH (Я повторяю эту переменную среды для подтверждения);

  2. этот путь не существует при выполнении rosstack profile

Вот список ROS набор:

ROSLIST_PACKAGE_DIRECTORIES="/home/MY_NAME/catkin_ws/devel/share/common-list"

ROS_DISTRO="jade"

ROS_ETC_DIR="/opt/ros/jade/etc/ros"

ROS_PACKAGE_PATH="home/MY_NAME/catkin_ws/src:opt/ros/jade/share:/opt/ros/jade/stacks"

ROS_ROOT="/opt/ros/jade/share/ros"

Кроме того, нет никакой неудачи при выполнении rosmake chapter2_tutorials:

enter image description here

Но нет chapter2_tutorials под ~/catkin_ws/devel/lib/.

В CMakeLists я использую от

https://github.com/AaronMR/Learning_ROS_for_Robotics_Programming/blob/master/chapter2_tutorials/CMakeLists.txt.

И добавить

rosbuild_add_executable (example1_a example1_a.cpp)

rosbuild_add_executable (example1_b example1_b.cpp)

в конце этого CMakeList файла.

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация, и спасибо, что нашли время на мой вопрос.

+0

вы можете проверить файл 'CMakeLists.txt' в вашем 'package chapter2_tutorials', если он содержит строку' rosbuild_add_executable (example1_a source_file.cpp) '? если нет, то у вас нет узла с именем example1_a. вы можете посмотреть эту [ссылку] (http://wiki.ros.org/rosbuild/CMakeLists/Examples) для объяснения. – Vtik

+0

Привет, Ясин, Спасибо за ответ. Но я добавляю rosbuild_add_executable в CMakeLists.txt. Один вопрос, что и где я должен иметь после розмака? Возможно, результат не генерируется через розмак. Спасибо. – willSapgreen

+0

Еще одна находка - при запуске rosmake, я получил много ROS_NOBUILD, таких как catkin, cmake_module, genmsg, cpp_common, rosclean, rosgraph, genlisp, genus, genpy и т. Д. Значит ли это, что встроенный сбой? Спасибо. – willSapgreen

ответ

0

Вы можете попробовать команду:

~$ rosrun chapter2_tutorials chap2_example1_a 

, потому что в CMakelists.txt, имя исполняемого файла не "example1_a"

add_executable(chap2_example1_a src/example1_a.cpp) 
add_executable(chap2_example1_b src/example1_b.cpp)