创建工作环境work space
- 首先进入主目录,先创建工程simulation_ws(ws是work space的缩写,只是起名习惯,使用其他的名字也可以),并在study_ws下创建src文件夹:
~$ mkdir simulation_ws && cd simulation_ws/
~/simulation_ws$ mkdir src && cd src/
- 然后在simulation_ws下编译整个项目:
~/simulation_ws/src$ cd ..
~/simulation_ws$ catkin_make
编译完成后项目的主目录下应该有三个文件夹:build
,devel
和src
,分别为项目的编译空间,开发空间和代码空间。我们还可以通过catkin_make install
生成安装空间install
。这个文件夹下会存放项目最终的可执行文件,不过对于初学者来说,这玩意儿使用不到的。熟悉windows下开发的同学可以将install
和devel
的关系看成release
和debug
文件夹的关系。
- 将项目的启动脚本放入环境变量,以便于使用ros指令管理项目:
~/simulation_ws$ source devel/setup.bash
- 当然,你可以在添加完成后查看是否添加成功:
~/simulation_ws$ echo $ROS_PACKAGE_PATH
看一看输出的路径集合中有没有这个刚刚创建的项目,有的话说明创建成功。
创建功能包
创建完工作环境后,首当其冲的就是功能包的创建。在创建功能包时,我们可以指定功能包需要包含的依赖库的名字,当然,这个也是可以后期在CMakeLists文件中制定的。命令格式为:
catkin_create_pkg <功能包名> [依赖库1][依赖库2][依赖库3]...
比如我们现在创建一个包含std_msgs,rospy,roscpp
的功能包test_pkg
,我们先进入主目录的src文件夹下,然后输入相关指令。
~/simulation_ws$ cd src/
~/simulation_ws/src$ catkin_create_pkg test_pkg std_msgs roscpp rospy
如此便完成创建,编译该功能包,只需要回到主目录(~/simulation_ws$
下)使用catkin_make
指令即可,它会编译整个功能包的文件。
记得每次打开功能包时,将环境变量加入,也就是~/simulation_ws$ source devel/setup.bash
。如果嫌麻烦,可以直接在主目录的隐藏文件.bashrc
中添加语句来设置环境变量。如下:
这样每次打开命令行就不需要再次设置当前工作空间的setup.bash的环境变量了。