ros笔记——创建工作空间与功能包

一、工作空间

工作空间是存放工程开发项目的文件夹

  • src:代码空间,用于放置功能包
  • build:编译空间,用于放置编译过程的中间文件
  • devel:开发空间,包含编译生成的可执行文件,debug版本
  • install:安装空间,包含编译可执行文件,release版本

二、创建工作空间

1.创建工作空间

ll@ll-ThinkPad-P15-Gen-1:~$ mkdir -p ~/ZtTest/src
ll@ll-ThinkPad-P15-Gen-1:~$ cd ~/ZtTest/src
ll@ll-ThinkPad-P15-Gen-1:~/ZtTest/src$ catkin_init_workspace

初始化后有以下内容

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest/src$ ls -n
total 0
lrwxrwxrwx 1 1000 1000 50 10月 20 19:18 CMakeLists.txt -> /opt/ros/melodic/share/catkin/cmake/toplevel.cmake

2.编译工作空间

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest/src$ cd ../
ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ catkin_make

编译后工作空间内有以下内容

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ ls -n
total 12
drwxrwxr-x 8 1000 1000 4096 10月 20 19:19 build
drwxrwxr-x 3 1000 1000 4096 10月 20 19:19 devel
drwxrwxr-x 2 1000 1000 4096 10月 20 19:18 src

devel文件夹下有以下内容:

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ ls -n devel
total 48
-rw-rw-r-- 1 1000 1000     0 10月 20 19:19 cmake.lock
-rwxr-xr-x 1 1000 1000   506 10月 20 19:19 env.sh
drwxrwxr-x 2 1000 1000  4096 10月 20 19:19 lib
-rw-r--r-- 1 1000 1000   283 10月 20 19:19 local_setup.bash
-rw-r--r-- 1 1000 1000   352 10月 20 19:19 local_setup.sh
-rw-r--r-- 1 1000 1000   293 10月 20 19:19 local_setup.zsh
-rw-r--r-- 1 1000 1000   260 10月 20 19:19 setup.bash
-rw-r--r-- 1 1000 1000  2779 10月 20 19:19 setup.sh
-rwxr-xr-x 1 1000 1000 13312 10月 20 19:19 _setup_util.py
-rw-r--r-- 1 1000 1000   270 10月 20 19:19 setup.zsh

build文件夹下有以下内容:

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ ls -n build
total 80
drwxrwxr-x 2 1000 1000  4096 10月 20 19:19 atomic_configure
drwxrwxr-x 3 1000 1000  4096 10月 20 19:19 catkin
drwxrwxr-x 4 1000 1000  4096 10月 20 19:19 catkin_generated
-rw-rw-r-- 1 1000 1000     0 10月 20 19:19 CATKIN_IGNORE
-rw-rw-r-- 1 1000 1000   109 10月 20 19:19 catkin_make.cache
-rw-rw-r-- 1 1000 1000 18293 10月 20 19:19 CMakeCache.txt
drwxrwxr-x 9 1000 1000  4096 10月 20 19:19 CMakeFiles
-rw-rw-r-- 1 1000 1000  6357 10月 20 19:19 cmake_install.cmake
-rw-r--r-- 1 1000 1000  2393 10月 20 19:19 CTestConfiguration.ini
-rw-rw-r-- 1 1000 1000   104 10月 20 19:19 CTestCustom.cmake
-rw-rw-r-- 1 1000 1000   270 10月 20 19:19 CTestTestfile.cmake
drwxrwxr-x 4 1000 1000  4096 10月 20 19:19 gtest
-rw-rw-r-- 1 1000 1000  9946 10月 20 19:19 Makefile
drwxrwxr-x 2 1000 1000  4096 10月 20 19:19 test_results

3.设置环境变量

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ source devel/setup.bash

4.检查环境变量

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ echo $ROS_PACKAGE_PATH
/home/ll/ZtTest/src:/opt/ros/melodic/share

5.创建Install文件夹

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ catkin_make install

install文件夹下内容

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ ls -n install
total 44
-rwxr-xr-x 1 1000 1000   506 10月 20 19:19 env.sh
-rw-r--r-- 1 1000 1000   283 10月 20 19:19 local_setup.bash
-rw-r--r-- 1 1000 1000   354 10月 20 19:19 local_setup.sh
-rw-r--r-- 1 1000 1000   293 10月 20 19:19 local_setup.zsh
-rw-r--r-- 1 1000 1000   260 10月 20 19:19 setup.bash
-rw-r--r-- 1 1000 1000  2781 10月 20 19:19 setup.sh
-rwxr-xr-x 1 1000 1000 13312 10月 20 19:19 _setup_util.py
-rw-r--r-- 1 1000 1000   270 10月 20 19:19 setup.zsh

三、创建功能包

1.创建功能包

使用指令 catkin_create_pkg <package name> [depend1] [depend2] [depend3]

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ cd src
ll@ll-ThinkPad-P15-Gen-1:~/ZtTest/src$ catkin_create_pkg srcPkgTest std_msgs rospy roscpp

一个工作空间内不能有同名功能包,不同工作空间内可以有同名功能包

功能包内容如下

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest/src$ ls -n srcPkgTest
total 20
-rw-rw-r-- 1 1000 1000 7067 10月 20 19:46 CMakeLists.txt
drwxrwxr-x 3 1000 1000 4096 10月 20 19:46 include
-rw-rw-r-- 1 1000 1000 2865 10月 20 19:46 package.xml
drwxrwxr-x 2 1000 1000 4096 10月 20 19:46 src

后续如果要修改该功能包的依赖源可以在package.xml文件内修改

<build_depend>roscpp</build_depend>
<build_depend>rospy</build_depend>
<build_depend>std_msgs</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>

2.编译功能包

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest/src$ cd ../
ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ catkin_make

3.设置环境变量

ll@ll-ThinkPad-P15-Gen-1:~/ZtTest$ source ./devel/setup.bash

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_ZhouTao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值