当前位置: 首页 > news >正文

关于Catkin工作空间的两种方式

传统catkin目录结构方式
my_workspace/
├── build/
├── devel/
├── src/
├── CMakeLists.txt
└── package.xml

此时当你有多个项目时,在该目录下执行catkin_make 后所有的项目都将会被编译。
那么如何对一个包单独编译?

catkin_make --pkg <package_name>

通过catkin_make 来指定包名或许是一个选择
或者是使用catkin build 来进行编译也可以

catkin build <package_name>
另外一种组织方式:创建多个工作空间

创建独立的工作空间 在不同的目录下,分别创建新的工作空间:

mkdir -p ~/workspace_project1/src
cd ~/workspace_project1
catkin_make

然后,为其他项目创建新的工作空间:

mkdir -p ~/workspace_project2/src
cd ~/workspace_project2
catkin_make

在工作空间中添加包 在每个 src/ 目录下,添加你需要的 ROS 包。例如:

cd ~/workspace_project1/src
git clone https://github.com/someone/ros_package.git

同样在其他工作空间中添加相应的包。

编译和设置环境 对每个工作空间,你都可以分别运行 catkin_make 或 catkin build 来编译工作空间内的所有包。例如:

cd ~/workspace_project1
catkin_make

如果你使用了 catkin_tools,可以使用 catkin build:

cd ~/workspace_project1
catkin build

使用不同的工作空间环境 每个工作空间都有自己的 devel 和 build 目录,因此可以为每个工作空间设置独立的环境变量。在工作空间中,使用 source 命令来配置环境:

source ~/workspace_project1/devel/setup.bash

如果你同时在多个工作空间工作,可以为每个工作空间分别设置不同的环境。例如,你可以在 .bashrc 文件中设置不同的环境变量,或者手动在终端中切换。

这种方法可以更好的将工作空间中的项目进行隔离,从而避免出现一些环境问题。


http://www.mrgr.cn/news/66701.html

相关文章:

  • DBeaver工具连接Hive
  • 单表查询题库
  • K8s资源对象监控之kube-state-metrics详解(Detailed Explanation of Kube State Metrics)
  • 【智鹿空间】c++实现了一个简单的链表数据结构 MyList,其中包含基本的 Get 和 Modify 操作,
  • Spring Boot 接口与单元测试
  • 加密货币行业与2024年美国大选
  • SpringBoot驱动的健身中心管理解决方案
  • Android AndroidManifest 文件内标签及属性
  • 虚假信息成为美国大选的首要安全问题
  • 安装acondana3, Conda command not found
  • 【Rust实现命令模式】
  • 【JAVA】Java基础—基础语法:运算符(算数、关系、逻辑运算符)
  • C++面经(一)
  • 【Ajax】跨域
  • AIDD - 分子药物发现的计算方法现状总结
  • 基于springboot+vue实现的旅行社网站系统
  • 辐射发射测试新境界:深入解析TS-RadiMation套件多种操作方法(一)
  • ubuntu 22.04 server 安装 mysql 5.7.40 更改 datadir 目录 LTS
  • 表单同时提交多条记录的技术实现
  • awk工具使用
  • 【Python编程实例】-深入理解Python线程安全
  • 【2023工业图像异常检测代码复现】DDAD: 基于条件去噪扩散模型的异常检测方法
  • [MySQL]DCL语句
  • APP开发者如何选择合适的聚合平台?
  • 论文写作总结
  • 【FL0016】基于SpringBoot和微信小程序的超市售货管理平台