Я получил следующую ошибку:
CMake Error at custom_msg/CMakeLists.txt:26 (target_link_libraries):
Attempt to add link library
"/usr/lib/x86_64-linux-gnu/libconsole_bridge.so" to target "listener" which
is not built in this directory.
CMakeList.txt
# %Tag(FULLTEXT)%
cmake_minimum_required(VERSION 2.8.3)
project(custom_msg)
## Find catkin and any catkin packages
find_package(catkin REQUIRED COMPONENTS roscpp rospy std_msgs message_generation)
## Declare ROS messages and services
add_message_files(FILES Num.msg PoseVel.msg)
add_service_files(FILES AddTwoInts.srv)
## Generate added messages and services
generate_messages(DEPENDENCIES std_msgs)
## Declare a catkin package
catkin_package(CATKIN_DEPENDS message_runtime std_msgs)
## Build talker and listener
include_directories(include ${catkin_INCLUDE_DIRS})
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_turorials_generate_messages_cpp)
# %EndTag(FULLTEXT)%
Я создал два пакета. Первый пакет называется beginner_tutorials, а второй - custom_msg. Beginner_tutorials был разработан, как описано в следующей ссылке:
Написание Издатель / Подписчик с C ++
После этого я создал новый пакет custom_msg. Я скопировал CMakeList.txt и исходный код. Я создал новое сообщение с именем PoseVel.msg и изменил код в Talker.cpp. В package.xml я включил message_generation и message_runtime.
Моя цель - использовать собственное сообщение. Я не понимаю, почему новый пакет выдает ошибку, а старый нет. В чем моя ошибка?
Спасибо за помощь.