ROS自学笔记:创建工作空间和功能包
工作空间:
src:代码空间,存储编写的源码,配置文件,launch文件等
build:编译空间,存储编译中间文件,一般用不上
devel:开发空间,存储编译好文件
install:安装空间,存储编译好文件
注:devel和install里面内容有所重复,这是ROS设计时的一个缺陷。在ROS2里devel空间被完全放弃
创建工作空间:
1 创建文件夹catkin_ws(名称可更换)及下面的src(名称不可更换)
sudo mkdir -p ~/catkin_ws/src
2 进入src,初始化工作空间
cd src
sudo catkin_init_workspace
3 回到工作空间根目录,编译工作空间
cd …
sudo catkin_make
这一步会产生devel和build文件夹,要产生install,还要进行一步
sudo catkin_make install

4 设置环境变量
source devel/setup.bash
上面方法只能生效一次,如果要永久修改环境变量,需要该.bashrc文件
进入home文件夹,.bashrc为隐藏文件,所以直接ls看不到
sudo vim .bashrc
进入后在末尾添加:
source /home/pi/catkin_ws/devel/setup.bash
注:pi 和catkin_ws改为自己的路径名和工作空间名
功能包:
功能包是ROS代码存储最小单位,ROS里源码必须存成功能包才能放在src里,不可以直接放在src里面
1 创建功能包:
cd src
sudo catkin_create_pkg 功能包名 [依赖1] [依赖2] [依赖3] …
catkin_create_pkg为创建功能包指令,方括号里标明功能包依赖
这里我们的示例:
sudo catkin_create_pkg test_pkg roscpp rospy std_msgs
依赖说明:roscpp用于应用C++文件,rospy用于应用python文件,std_msgs为ROS里标准话题类型
在功能包里,src用来存储源码,include用于存储头文件(如C++的h文件),CMakeList.txt和package.xml为功能包里重要说明文件
package.xml内容:
1 功能包名称,版号,开发者信息

2 依赖文件信息,如果功能包后续需要添加依赖就在这里该

CMakeLists.txt

编译文件信息。后续写好的节点程序要在CMakeLists里进行声明才能运行
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
