核心内容摘要
在线观看91视频无需下载,高清流畅,免费资源,热门推荐,精彩内容...
通俗点说--symlink-install是一个**“帮你偷懒、提高效率”**的神器。
它的核心作用是把“复制文件”变成“创建快捷方式”。
如果不加这个参数 (普通模式)动作colcon会把你写的代码比如 Python 脚本、Launch 启动文件、YAML 配置文件从src目录完整复制一份到install目录里。
后果如果你修改了src里的代码。
你运行程序时ROS 运行的是install里的旧副本。
你必须再次运行colcon build把新代码重新复制过去修改才会生效。
缺点改一行代码就要编译一次非常浪费时间。
加了这个参数 (--symlink-install)动作colcon不会复制文件而是会在install目录里创建一个指向src目录的软链接 (Symbolic Link相当于 Windows 的快捷方式)。
后果你修改了src里的代码。
你运行程序时ROS 顺着快捷方式直接找到了你刚改完的新代码。
不需要重新编译直接运行就能看到效果优点改完代码直接跑效率起飞。
⚠️ 重要区分对不同语言的效果虽然它很好用但它不是万能的对 Python 和 C 的效果不同文件类型加了参数后的效果是否需要重新编译Python 代码(.py)实时生效❌不需要(改完直接运行)配置文件(.yaml,.xml)实时生效❌不需要启动文件(.launch.py)实时生效❌不需要C 代码(.cpp)无效✅必须编译(因为 C 需要编译成二进制文件光有快捷方式没用)C 头文件(.hpp)部分生效通常还是建议编译部分包编译:场景 A我刚开机或者拉取了别人的新代码全部重新编译当你不知道别人改了哪里或者你想确保整个系统没问题时cd ~/work_space/lubo_auto_car colcon build --symlink-install source install/setup.bash场景 B我只改了自己的某个包增量编译比如你只改了planning_node的代码编译所有包太慢了尤其是以后包多了之后。
只编译一个包省时间# 语法--packages-select 包名 colcon build --symlink-install --packages-select planning_node # 别忘了编译完刷新环境 source install/setup.bash