创建工作空间与功能包

创建ROS工作空间

简介

  • 工作空间(Workspace)是一个存放工程开发相关文件的文件夹。在ROS系统下,我们所有的项目都放在同一个工作空间下,我们在工作空间下建立不同的功能包来实现不同的功能。这些功能包可以是你自己写的,也可以是你移植其他人的

  • src:代码空间(Source Space),用来放置我们的功能包

  • build:编译空间(Build Space),放置编译过程中产生的一些中间文件

  • devel:开发空间(Development Space),放置我们编译生成的可执行文件、动态链接库、静态链接库、脚本等

创建和构建

  • 创建目录
$ mkdir -p ~/catkin_ws/src
$ cd ~/catkin_ws/
  • 编译
$ catkin_make
  • 设置环境变量
$ echo "source /home/username/catkin_ws/devel/setup.bash" >> ~/.bashrc
  • 检查环境变量
$ echo $ROS_PACKAGE_PATH
/home/ksals/catkin_ws/src:/opt/ros/noetic/share

创建ROS软件包

文件

  • CMakeLists.txt:定义package的包名、依赖、源文件、目标文件等编译规则
  • package.xml:描述package的包名、版本号、作者、依赖、许可证等信息
  • include:存放头文件
  • src:存放源代码

创建和编译

  • 创建
$ cd ~/catkin_ws/src
$ catkin_create_pkg <package_name> [depend1] [depend2] [depend3]
# 依赖项是你的这个功能包依赖于哪些功能模块
  • 编译
$ cd ~/catkin_ws
$ catkin_make
  • 生效环境变量
$ . ~/catkin_ws/devel/setup.bash

同一个工作空间下,不允许存在同名功能包

不同工作空间下,允许存在同名功能包

posted @ 2021-11-03 18:00  TNTksals  阅读(187)  评论(0编辑  收藏  举报