文章只是个人学习过程中学习笔记,主要参考ROS教程1。
1. 创建catkin工作空间
Catkin工作空间是一个文件夹,可以在其中修改、构建和安装 catkin 包。
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
在运行上述命令后,在catkin_ws工作空间下有build、devel、src这个三个目录文件夹(这3个catkin编译系统默认的)。
build(Build Space):catkin(CMake)的缓存信息和其他中间件devel(Development Space):生成目标文件(包括头文件、动态链接库、静态链接库、可执行文件等)、环境变量src(Source Space):ROS的catkin软件包(源码)

Tips:早期有些教程仍然保留
catkin_init_workspace这条初始化命令,它的作用就是在catkin_ws工作空间的src目录下创建CMakeLists.txt文件。但实际上catkin_make命令包含了catkin_init_workspace,不必再调用了(当然你也可以使用,没有任何影响)。
接下来设置环境变量,首先source一下新生成的setup.*sh文件(在devel目录下可看见几个setup.*sh):
source devel/setup.bash
但是上述命令只适用当前终端,这导致每次打开新的终端都需要source命令一下,重新刷新环境变量,才能使用ROS相关命令。解决办法是,在终端中输入如下命令,如此每次打开终端,.bashrc会自动运行:
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
我们用 vi 编辑器打开 ~/.bashrc 文件,在文件的末尾(红色框内)这行就是我们添加的ROS系统的环境变量,上一行是我们创建的catkin_ws工作空间的环境变量。在终端中输入如下命令:
vi ~/.bashrc

想要查看环境变量,在终端中输入如下命令:
echo $ROS_PACKAGE_PATH
通过上述命令后,显示包含那些保存有ROS软件包的路径,并且每个路径之间用冒号(:)分隔开来。

路径PATH格式:/home/<
username>/catkin_ws/src:/opt/ros/<distro>/share
2. catkin工作空间结构
要查看catkin工作空间的结构,可以使用tree命令,显示文件结构,在终端中输入如下命令:
cd ~/catkin_ws
sudo apt install tree
tree
显示的结构如下所示:
.
├── build
│ ├── atomic_configure
│ │ ├── env.sh
│ │ ├── local_setup.bash
│ │ ├── local_setup.sh
│ │ ├── local_setup.zsh
│ │ ├── setup.bash
│ │ ├── setup.sh
│ │ ├── _setup_util.py
│ │ └── setup.zsh
│ ├── catkin
│ │ └── catkin_generated
│ │ └── version
│ │ └── package.cmake
│ ├── catkin_generated
│ │ ├──
......
├── devel
│ ├── cmake.lock
│ ├── env.sh
│ ├── lib
│ ├── local_setup.bash
│ ├── local_setup.sh
│ ├── local_setup.zsh
│ ├── setup.bash
│ ├── setup.sh
│ ├── _setup_util.py
│ └── setup.zsh
└── src
└── CMakeLists.txt -> /opt/ros/melodic/share/catkin/cmake/toplevel.cmake
ROS.otg. ROS教程[EB/OL]. 2020-12-22[2022-7-5]. http://wiki.ros.org/cn/ROS/Tutorials. ↩︎

本文是个人学习笔记,参考ROS教程。主要介绍了在ROS中创建catkin工作空间,包括其默认的三个目录文件夹及作用,还提到设置环境变量的方法。此外,说明了查看catkin工作空间结构可使用tree命令。
1759

被折叠的 条评论
为什么被折叠?



