ros2 colcon build 构建后,install中的local_setup.bash 和setup.bash有什么区别

  1. 功能概述
    • 在 ROS2 中,colcon build是用于构建软件包的工具。构建完成后会生成install文件夹,其中的setup.bashlocal_setup.bash文件都与环境设置相关,但存在一些区别。
  2. setup.bash
    • 作用范围
      • setup.bash文件用于设置整个工作空间的环境变量。当你在终端中执行. /install/setup.bash(假设install文件夹是构建结果所在的文件夹)时,它会将工作空间中的所有包(包括其可执行文件路径、库路径、Python 模块路径等)添加到环境变量中,使得系统能够找到这些资源。
    • 使用场景
      • 如果你的工作空间包含多个相互关联的 ROS2 包,并且你希望一次性设置好整个工作空间的环境,以便能够运行其中的各种节点、工具等,就可以使用setup.bash。例如,如果你有一个包含传感器驱动包、数据处理包和控制算法包的工作空间,执行setup.bash后就可以在这个工作空间内方便地运行不同包提供的功能。
  3. local_setup.bash
    • 作用范围
      • local_setup.bash主要关注当前构建的包或者当前目录下的包的环境设置。它只会将与当前包直接相关的环境变量添加到环境中。相对setup.bash来说,它的设置更加局部化。
    • 使用场景
      • 当你只想针对当前构建的某个特定包进行测试或者开发时,可以使用local_setup.bash。例如,你刚刚修改并重新构建了一个特定的 ROS2 包,只需要这个包相关的环境设置来进行单独的测试,此时local_setup.bash就很有用。它可以避免将整个工作空间的环境变量都设置进来,减少潜在的环境冲突,并且在某些情况下可以提高环境设置的速度。
相关推荐
PhyliciaFelicia40 分钟前
基于R语言机器学习遥感数据处理与模型空间预测
开发语言·深度学习·随机森林·机器学习·数据分析·r语言
小帅吖1 小时前
浅析Golang的Context
开发语言·后端·golang
Eiceblue1 小时前
Python保留数据删除Excel单元格的函数和公式
开发语言·python·excel
丢掉幻想准备斗争1 小时前
C++(string类的实现)
开发语言·c++
写bug如流水2 小时前
【Python】使用 Pydantic + SQLAlchemy + MySQL 实现自动记录创建时间和更新时间
开发语言·python·mysql
Watermelon Y3 小时前
【C++】多肽
开发语言·c++
郑州吴彦祖7723 小时前
java入门基础(一篇搞懂)
java·开发语言
菜鸡中的奋斗鸡→挣扎鸡3 小时前
初始爬虫11
开发语言·爬虫·python
碧海蓝天20223 小时前
C++ 线性表、内存操作、 迭代器,数据与算法分离。
开发语言·数据结构·c++·算法
计算机科研之友(Friend)3 小时前
物联网(一)——CMC特刊推荐
开发语言·人工智能·深度学习·物联网·计算机视觉·网络安全