ROS学习笔记(1)
程序员文章站
2022-06-04 16:05:49
...
【通式】创建ROS节点:
#include<ros/ros.h>
//头文件ros/ros.h包含了标准ROS类声明
int main(int argc,char**argv){
//初始化ROs系统
ros::int(argc,argv,"默认节点名的字符串");
//生成为ROS节点
ros::NodeHandle nh;
...
}
【通式】编译四步
1.声明依赖库 确保catkin能够向c++编译器提供合适的标记来定位编译功能包所需的头文件和链接库。
//在CMakeList.txt中编辑
find_package(catkin REQUIRED COMPONENTS package-names)
//在清单文件xml中列出依赖库,好让以后用这个包的人知道得安装哪些包。使用build_depend(编译依赖)和run_depend(运行依赖)进行说明
<build_depend>package_name</build_depend>
//run同理
2.声明可执行文件
//在CMakeLists.txt中添加
add_executable(可执行文件名 源文件1 源文件2)
target_link_libraries(可执行文件名 ${catkin_LIBRARIES})
//第一行声明可执行文件名是啥,以及执行程序
//第二行告诉Cmake当链接此可执行文件时得另外链接哪些库,${catkin_LIBRARIES}就是find_package中添加的
//如果一个功能包中含多个可执行节点,如下:
add_executable(talk talker.cpp)
target_link_libraries(talk ${catkin_LIBRARIES})
add_executable(listen listener.cpp)
target_link_libraries(listen ${catkin_LIBRARIES})
3.编译工作区
catkin_make 此命令编译工作区中所有的功能包
4.sourcing
source devel/setup.bash 此命令执行自动生成的环境配置脚本