创建ROS功能包后更改CMakeLists.txt和package.xml
一、C++实现的ROS功能包
1. CMakeLists.txt配置
cmake_minimum_required(VERSION 3.0.2)
project(learning_cplus)
find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
std_msgs
message_generation
)
add_message_files(
FILES
Message1.msg
Message2.msg
)
generate_messages(
DEPENDENCIES
std_msgs
)
catkin_package(
CATKIN_DEPENDS roscpp rospy std_msgs message_runtime
)
include_directories(include ${catkin_INCLUDE_DIRS})
add_executable(publisher src/publisher.cpp)
target_link_libraries(publisher ${catkin_LIBRARIES})
add_dependencies(publisher learning_cplus_generate_messages_cpp)
add_executable(listener src/listener.cpp)
target_link_libraries(listener ${catkin_LIBRARIES})
add_dependencies(listener learning_cplus_generate_messages_cpp)
include_directories(
${catkin_INCLUDE_DIRS}
)
2. package.xml配置
<?xml version="1.0"?>
<package format="2">
<name>learning_cplus</name>
<version>0.0.0</version>
<description>The learning_cplus package</description>
<maintainer email="qy@todo.todo">qy</maintainer>
<license>TODO</license>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>roscpp</build_depend>
<build_depend>rospy</build_depend>
<build_depend>std_msgs</build_depend>
<build_depend>message_generation</build_depend>
<build_export_depend>roscpp</build_export_depend>
<build_export_depend>rospy</build_export_depend>
<build_export_depend>std_msg</build_export_depend>
<exec_depend>roscpp</exec_depend>
<exec_depend>rospy</exec_depend>
<exec_depend>std_msgs</exec_depend>
<exec_depend>message_runtime</exec_depend>
<export>
</export>
</package>
二、python实现的ROS功能包
1. CMakeLists.txt配置
cmake_minimum_required(VERSION 3.0.2)
project(learning_python)
find_package(catkin REQUIRED COMPONENTS
roscpp
rospy
std_msgs
message_generation
)
generate_messages(
DEPENDENCIES
std_msgs
)
include_directories(
${catkin_INCLUDE_DIRS}
)
2. package.xml配置
<?xml version="1.0"?>
<package format="2">
<name>learning_python</name>
<version>0.0.0</version>
<description>The learning_python package</description>
<maintainer email="qy@todo.todo">qy</maintainer>
<license>TODO</license>
<buildtool_depend>catkin</buildtool_depend>
<build_depend>roscpp</build_depend>
<build_depend>rospy</build_depend>
<build_depend>std_msgs</build_depend>
<build_depend>message_generation</build_depend>
<build_export_depend>roscpp</build_export_depend>
<build_export_depend>rospy</build_export_depend>
<build_export_depend>std_msgs</build_export_depend>
<exec_depend>roscpp</exec_depend>
<exec_depend>rospy</exec_depend>
<exec_depend>std_msgs</exec_depend>
<exec_depend>message_runtime</exec_depend>
<export>
</export>
</package>