Ubuntu 22.04 下使用 VS Code 搭建 ROS 2 Humble 集成开发环境

目录

一、前言

[二、为什么要配置 VS Code 开发 ROS 2](#二、为什么要配置 VS Code 开发 ROS 2)

[三、ROS 2 开发常用 VS Code 插件推荐](#三、ROS 2 开发常用 VS Code 插件推荐)

[3.1 基础开发类插件](#3.1 基础开发类插件)

[3.2 效率增强类插件](#3.2 效率增强类插件)

[3.3 可选插件](#3.3 可选插件)

[四、解决 ROS 2 头文件报红问题](#四、解决 ROS 2 头文件报红问题)

[4.1 找不到头文件](#4.1 找不到头文件)

[4.2 解决方法](#4.2 解决方法)

[五、推荐的 .vscode 配置文件](#五、推荐的 .vscode 配置文件)

[5.1 c_cpp_properties.json](#5.1 c_cpp_properties.json)

[5.2 settings.json](#5.2 settings.json)

[5.3 tasks.json](#5.3 tasks.json)

[六、安装终端工具 Terminator](#六、安装终端工具 Terminator)

[6.1 安装命令](#6.1 安装命令)

[6.2 启动方式](#6.2 启动方式)

[七、安装 Git](#七、安装 Git)

[7.1 安装命令](#7.1 安装命令)

[7.2 查看帮助](#7.2 查看帮助)

八、使用Vscode编写Python代码:

[8.1 打开终端并进入工作空间](#8.1 打开终端并进入工作空间)

[8.2 创建 Python 功能包](#8.2 创建 Python 功能包)

[8.3 编写 Python 节点代码](#8.3 编写 Python 节点代码)

[8.4 编译功能包](#8.4 编译功能包)

[8.5 运行 Python 节点](#8.5 运行 Python 节点)

[8.6 在已有 Python 功能包中继续添加可执行文件](#8.6 在已有 Python 功能包中继续添加可执行文件)

[8.6.1 新建 Python 文件](#8.6.1 新建 Python 文件)

[8.6.2 修改 setup.py](#8.6.2 修改 setup.py)

[8.6.3 重新编译并运行](#8.6.3 重新编译并运行)

[九、使用 Vscode 编写 C++ 代码](#九、使用 Vscode 编写 C++ 代码)

[9.1 打开终端并进入工作空间](#9.1 打开终端并进入工作空间)

[9.2 创建 C++ 功能包](#9.2 创建 C++ 功能包)

[9.3 编写 C++ 节点代码](#9.3 编写 C++ 节点代码)

[9.4 配置 CMakeLists.txt](#9.4 配置 CMakeLists.txt)

[9.5 编译功能包](#9.5 编译功能包)

[9.6 运行 C++ 节点](#9.6 运行 C++ 节点)

[9.7 在已有 C++ 功能包中继续添加可执行文件](#9.7 在已有 C++ 功能包中继续添加可执行文件)

[9.7.1 新建 C++ 文件](#9.7.1 新建 C++ 文件)

[9.7.2 修改 CMakeLists.txt](#9.7.2 修改 CMakeLists.txt)

[9.7.3 重新编译并运行](#9.7.3 重新编译并运行)

十、总结


一、前言

在 ROS 2 学习与开发过程中,虽然理论上只需要一个文本编辑器和终端就能编写、编译并运行程序,但如果想要提升开发效率、减少配置问题、增强代码补全与跳转能力,那么搭建一套完整的集成开发环境就非常有必要。

在 Ubuntu 22.04 + ROS 2 Humble 的开发场景下,VS Code 是一个非常合适的选择。它轻量、免费、跨平台、插件丰富,并且能够很好地支持 Python、C++、CMake、Git 以及 ROS 2 项目开发。除此之外,终端工具和版本控制工具也是日常开发中不可缺少的部分。

这篇文章就结合实际配置过程,系统整理一套 ROS 2 集成开发环境搭建方案,包括 VS Code 安装、插件推荐、配置文件编写、终端工具安装、Git 安装,以及使用 VS Code 创建并运行 ROS 2 功能包的完整流程。


二、为什么要配置 VS Code 开发 ROS 2

ROS 2 项目通常会同时涉及:

  • Python 节点开发
  • C++ 节点开发
  • CMake / colcon 编译
  • package.xml / setup.py / CMakeLists.txt 配置
  • 多终端运行与调试
  • Git 版本管理

如果不做额外配置,VS Code 在打开 ROS 2 工程时往往会出现以下问题:

  • #include "rclcpp/rclcpp.hpp" 报红
  • Python 包无法自动补全
  • 无法正确跳转到 ROS 2 接口定义
  • 编译命令需要每次手动输入
  • 工作区中的 build / install / log 目录影响搜索体验

因此,提前把 VS Code 配置好,可以明显提升编码、调试和维护效率。


三、ROS 2 开发常用 VS Code 插件推荐

为了让 VS Code 更适合 ROS 2 开发,建议至少安装以下几类插件。

3.1 基础开发类插件

  • Python
    用于 Python 语法高亮、调试、补全和格式化。
  • C/C++
    用于 C++ 语法分析、头文件跳转、智能提示。
  • CMake
    用于识别和辅助编辑 CMakeLists.txt
  • CMake Tools
    更方便管理 CMake 工程。

3.2 效率增强类插件

  • IntelliSense
    提供智能补全与跳转支持,是写 ROS 2 代码时非常重要的能力来源。
  • Code Runner
    适合快速执行一些独立代码片段,不过在 ROS 2 项目里更多还是配合终端和 colcon 使用。
  • ROS
    提供对 ROS / ROS 2 工程的额外支持,便于识别相关文件类型和开发场景。

3.3 可选插件

根据个人习惯,还可以安装:

  • autopep8:Python 代码格式化
  • GitLens:增强 Git 历史查看能力
  • Error Lens:更直观显示报错信息
  • XML / YAML:方便编辑 launch、参数、配置文件

如果平时 ROS 2 开发以 Python + C++ 混合为主,那么 Python、C/C++、CMake、ROS、IntelliSense 这几类插件基本是必装的。


四、解决 ROS 2 头文件报红问题

4.1 找不到头文件

很多人在 VS Code 中打开 ROS 2 C++ 工程后,最常见的问题就是:

bash 复制代码
#include "rclcpp/rclcpp.hpp"

会提示找不到头文件。

本质原因在于:VS Code 没有正确配置 includePath,因此 IntelliSense 不知道去哪里查找 ROS 2 的头文件。

4.2 解决方法

当鼠标移动到报错语句时,通常会出现"快速修复"提示,可以选择编辑**includePath 设置** 。

也可以直接在配置文件中加入以下路径:

bash 复制代码
"includePath": [
"${workspaceFolder}/**",
"/opt/ros/humble/include/**",
"/usr/include/**"
]

如果希望配置更完整一些,也可以加入本地安装路径:

bash 复制代码
"/usr/local/**",
"/usr/local/include/**"

这些路径能够让 VS Code 正确识别 ROS 2 的头文件和系统库文件。相关配置思路也与你提供的资料一致。


五、推荐的 .vscode 配置文件

为了让 ROS 2 工作空间在 VS Code 中具备更好的补全、跳转和编译体验,建议在工程根目录下新建 .vscode 文件夹,并配置以下文件。


5.1 c_cpp_properties.json

这个文件主要用于配置 C/C++ 头文件搜索路径和编译器信息。

bash 复制代码
{
  "configurations": [
    {
      "browse": {
        "databaseFilename": "${default}",
        "limitSymbolsToIncludedHeaders": false
      },
      "includePath": [
        "/usr/include/**",
        "/usr/local/**",
        "/usr/local/include/**",
        "/opt/ros/humble/include/**",
        "${workspaceFolder}/**"
      ],
      "name": "ROS2",
      "intelliSenseMode": "gcc-x64",
      "compilerPath": "/usr/bin/gcc",
      "cStandard": "gnu11",
      "cppStandard": "c++17"
    }
  ],
  "version": 4
}

该配置可以让 VS Code 更好地识别ROS 2 的 C++ 工程结构与系统头文件


5.2 settings.json

这个文件主要用于配置编辑器行为、Python 补全路径、代码格式化以及搜索忽略规则。

bash 复制代码
{
"editor.tabSize": 8,
"editor.rulers": [
100
],
"files.associations": {
"*.repos": "yaml",
"*.world": "xml",
"*.xacro": "xml",
"chrono": "cpp"
},
"python.autoComplete.extraPaths": [
"/opt/ros/humble/lib/python3.8/site-packages/"
],
"python.envFile": "${workspaceFolder}/.env",
"python.formatting.autopep8Path": "/usr/bin/autopep8",
"python.formatting.autopep8Args": [
"--max-line-length=100"
],
"C_Cpp.default.intelliSenseMode": "gcc-x64",
"C_Cpp.formatting": "Enabled",
"search.exclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/*.code-search": true,
"**/build": true,
"**/install": true,
"**/log": true
},
"python.analysis.extraPaths": [
"/opt/ros/humble/lib/python3.8/site-packages/"
],
"C_Cpp.default.includePath": [
"/usr/include/**",
"/opt/ros/humble/include/**",
"${workspaceFolder}/**"
],
"editor.definitionLinkOpensInPeek": true,
"editor.gotoLocation.alternativeDeclarationCommand": "editor.action.goToImplementation",
"editor.gotoLocation.alternativeImplementationCommand": "editor.action.goToImplementation",
"editor.gotoLocation.alternativeReferenceCommand": "editor.action.goToReferences"
}

这一部分配置的核心作用有三点:

  1. 让 VS Code 能识别 ROS 2 的 Python 包路径
  2. 屏蔽 build / install / log 等无关目录,提升搜索体验
  3. 强化代码跳转、声明跳转和实现跳转能力

5.3 tasks.json

如果希望在 VS Code 中直接通过快捷键编译 ROS 2 工作空间,可以配置任务文件。

bash 复制代码
{
"version": "2.0.0",
"tasks": [
{
"label": "colcon make",
"detail": "Build workspace (default)",
"type": "shell",
"command": "colcon build",
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": "$gcc"
}
]
}

之后按下:

bash 复制代码
Ctrl + Shift + B

就可以直接触发编译。


六、安装终端工具 Terminator

ROS 2 开发中经常需要同时打开多个终端,例如:

  • 一个终端运行 ros2 daemon
  • 一个终端编译工程
  • 一个终端启动节点
  • 一个终端查看 topic / service / node 信息

这时候推荐安装 Terminator

6.1 安装命令

bash 复制代码
sudo apt update
sudo apt install terminator

6.2 启动方式

可以在应用菜单中搜索 Terminator,也可以继续使用默认终端快捷键:

bash 复制代码
Ctrl + Alt + T

Terminator 的优点在于支持终端分屏和多标签管理,比较适合 ROS 2 这种经常多进程联调的开发场景。


七、安装 Git

Git 是日常开发中必不可少的工具,尤其是 ROS 2 学习过程中经常要从 GitHub 或 Gitee 拉取源码仓库。

7.1 安装命令

bash 复制代码
sudo apt install git

7.2 查看帮助

bash 复制代码
git --help

八、使用Vscode编写Python代码:

在完成 ROS2 环境安装之后,下一步就是正式开始编写代码。

本节主要介绍如何在 VS Code 中进入工作空间、创建功能包、编写 Python 节点程序,以及在已有功能包中继续添加新的可执行文件。


8.1 打开终端并进入工作空间

在 VS Code 中,可以直接使用快捷键 Ctrl + ~ 打开内置终端。
这样就不需要频繁切换到系统外部终端,开发过程会更加流畅。

打开终端后,先进入自己的 ROS2 工作空间,再切换到**src**目录。例如:

bash 复制代码
cd ~/ros2_ws/src

这里的 ros2_ws 是工作空间名称,具体以自己的实际目录为准。

之所以进入 src 目录,是因为 ROS2 的功能包通常都创建在工作空间下的 src 文件夹中。后续无论是新建功能包,还是管理已有工程代码,基本都会在这里完成。


8.2 创建 Python 功能包

src 目录下,可以通过下面的命令创建一个 Python 类型的 ROS2 功能包:

bash 复制代码
ros2 pkg create pkg_hellovscode_py --build-type ament_python --dependencies rclpy --node-name helloworld

这条命令的含义如下:

  • pkg_hellovscode_py:功能包名称
  • --build-type ament_python:指定该功能包使用 Python 构建方式
  • --dependencies rclpy:声明依赖 rclpy
  • --node-name helloworld:自动生成一个名为 helloworld 的节点入口文件

执行完成后,ROS2 会自动在当前 src 目录下生成该功能包的标准目录结构。

bash 复制代码
pkg_hellovscode_py/
├── package.xml
├── setup.py
├── setup.cfg
├── resource/
│ └── pkg_hellovscode_py
├── test/
│ ├── test_copyright.py
│ ├── test_flake8.py
│ └── test_pep257.py
└── pkg_hellovscode_py/
├── __init__.py
└── helloworld.py

其中,各部分作用如下:

  • package.xml:功能包的说明文件,用于声明功能包名称、版本、依赖关系等信息。
  • setup.py:Python 功能包的安装与入口配置文件,后续新增可执行节点时通常需要修改这里。
  • setup.cfg:Python 安装相关配置文件。
  • resource/:功能包资源标识文件所在目录。
  • test/:存放测试相关文件。
  • pkg_hellovscode_py/:Python 模块目录,实际编写的节点代码通常放在这里。
  • __init__.py:用于标识该目录是一个 Python 包。
  • helloworld.py:通过 --node-name helloworld 自动生成的节点文件。

8.3 编写 Python 节点代码

创建好功能包之后,可以在 VS Code 左侧资源管理器中找到该包,并打开自动生成的 Python 文件进行编辑。
这里编写一个最简单的 ROS2 Python 节点,用来输出一条日志信息。

helloworld.py 示例代码如下:

python 复制代码
import rclpy

def main(args=None):
    # 初始化 ROS2
    rclpy.init(args=args)

    # 创建节点
    node = rclpy.create_node("helloworld_vscode_node")

    # 输出日志信息
    node.get_logger().info("hello vscode!")

    # 关闭 ROS2
    rclpy.shutdown()

if __name__ == '__main__':
    main()

这段代码的功能比较简单,执行后会创建一个名为 helloworld_vscode_node 的节点,并在终端中输出:hello vscode!

对于初学者来说,可以先重点理解以下几个部分:

  • rclpy.init(args=args):初始化 ROS2 Python 接口
  • rclpy.create_node(...):创建一个节点对象
  • node.get_logger().info(...):输出日志信息
  • rclpy.shutdown():程序结束时关闭 ROS2

8.4 编译功能包

在完成代码编写之后,需要返回到工作空间根目录进行编译。
假设当前位于 src 目录,那么可以先执行:

bash 复制代码
cd ..


// 然后使用 colcon build 进行编译:

colcon build


// 如果功能包没有报错,说明编译成功。

8.5 运行 Python 节点

编译完成后,还需要先刷新环境变量:

bash 复制代码
source install/setup.bash

然后通过 ros2 run 命令运行刚刚编写的节点:

bash 复制代码
ros2 run pkg_hellovscode_py helloworld

运行成功后,就可以在终端中看到节点输出的信息。


8.6 在已有 Python 功能包中继续添加可执行文件

在实际开发中,一个功能包往往不只包含一个节点程序。
例如,前面已经有一个 helloworld,现在还想在同一个功能包里再增加一个新的可执行文件 helloworld2,这时就需要额外进行配置。


8.6.1 新建 Python 文件

可以先复制已有的 helloworld.py,然后重命名为 helloworld2.py
修改后的代码如下:

python 复制代码
import rclpy

def main(args=None):
    # 初始化 ROS2
    rclpy.init(args=args)

    # 创建节点
    node = rclpy.create_node("helloworld_vscode_node")

    # 输出日志信息
    node.get_logger().info("hello vscode!111")

    # 关闭 ROS2
    rclpy.shutdown()

if __name__ == '__main__':
    main()

这个文件本质上也是一个独立的 ROS2 Python 节点,只不过输出内容不同。


8.6.2 修改 setup.py

如果只是新增了 Python 文件,但没有在 setup.py 中注册入口,那么 ROS2 是无法直接运行它的。
因此需要打开功能包中的 setup.py 文件,找到 entry_points 部分,并修改为:

python 复制代码
entry_points={
    'console_scripts': [
        'helloworld = pkg_hellovscode_py.helloworld:main',
        'helloworld2 = pkg_hellovscode_py.helloworld2:main'
    ],
},

这里的含义是:

  • helloworld 对应 helloworld.py 中的 main 函数
  • helloworld2 对应 helloworld2.py 中的 main 函数

也就是说,每增加一个可执行 Python 节点,都要在 setup.pyconsole_scripts 中增加一条映射关系


8.6.3 重新编译并运行

修改完成后,重新在工作空间根目录执行编译:

bash 复制代码
colcon build

然后刷新环境变量:

bash 复制代码
source install/setup.bash

最后运行新的节点:

bash 复制代码
ros2 run pkg_hellovscode_py helloworld2

如果终端正常输出对应内容,就说明新的可执行文件已经配置成功。


九、使用 Vscode 编写 C++ 代码

在完成 ROS2 环境安装之后,除了可以使用 Python 编写节点程序外,也可以使用 C++ 进行开发。在 ROS2 中,C++ 通常通过 rclcpp 接口完成节点创建、消息通信和功能扩展。相较于 Python,C++ 在执行效率、工程部署和大型项目开发中也更加常见。

本节主要介绍如何在 VS Code 中进入工作空间、创建 C++ 功能包、编写 C++ 节点程序,以及在已有功能包中继续添加新的可执行文件。


9.1 打开终端并进入工作空间

在 VS Code 中,可以直接使用快捷键 Ctrl + ~ 打开内置终端。
这样就不需要频繁切换到系统外部终端,开发过程会更加方便。

打开终端后,先进入自己的 ROS2 工作空间,再切换到 src 目录。例如:

bash 复制代码
cd ~/ros2_ws/src

这里的 ros2_ws 是工作空间名称,具体以自己的实际目录为准。

之所以进入 src 目录,是因为 ROS2 的功能包通常都创建在工作空间下的 src 文件夹中。后续无论是新建功能包,还是管理已有工程代码,基本都会在这里完成。


9.2 创建 C++ 功能包

src 目录下,可以通过下面的命令创建一个 C++ 类型的 ROS2 功能包:

bash 复制代码
ros2 pkg create pkg_hellovscode_cpp --build-type ament_cmake --dependencies rclcpp

这条命令的含义如下:

  • pkg_hellovscode_cpp:功能包名称
  • --build-type ament_cmake:指定该功能包使用 CMake 构建方式
  • --dependencies rclcpp:声明依赖 rclcpp

执行完成后,ROS2 会自动在当前 src 目录下生成该功能包的标准目录结构。

bash 复制代码
pkg_hellovscode_cpp/
├── CMakeLists.txt
├── package.xml
├── include/
│ └── pkg_hellovscode_cpp/
└── src/

其中,各部分作用如下:

  • CMakeLists.txt:C++ 功能包最核心的构建配置文件,用于配置编译规则、依赖项和安装目标等内容。
  • package.xml:功能包的说明文件,用于声明功能包名称、版本、依赖关系等信息。
  • include/:头文件目录,后续如果有自定义类或接口文件,通常放在这里。
  • src/:源文件目录,实际编写的 C++ 节点代码通常放在这里。

与 Python 功能包不同**,C++ 功能包默认不会自动生成节点源文件,因此需要我们自己在 src 目录下新建 .cpp 文件。**


9.3 编写 C++ 节点代码

创建好功能包之后,可以在 VS Code 左侧资源管理器中找到该包,并在 src 目录下新建一个 hellovscode.cpp 文件。
这里编写一个最简单的 ROS2 C++ 节点,用来输出一条日志信息。

hellovscode.cpp 示例代码如下:

cpp 复制代码
#include "rclcpp/rclcpp.hpp"

int main(int argc, char ** argv)
{
    rclcpp::init(argc, argv);

    auto node = rclcpp::Node::make_shared("hello_vscode_node_cpp");

    RCLCPP_INFO(node->get_logger(), "hello vscode......");

    rclcpp::shutdown();

    return 0;
}

这段代码的功能比较简单,执行后会创建一个名为 hello_vscode_node_cpp 的节点,并在终端中输出:hello vscode......

对于初学者来说,可以先重点理解以下几个部分:

  • rclcpp::init(argc, argv):初始化 ROS2 C++ 接口
  • rclcpp::Node::make_shared(...):创建一个节点对象
  • RCLCPP_INFO(...):输出日志信息
  • rclcpp::shutdown():程序结束时关闭 ROS2

9.4 配置 CMakeLists.txt

由于 C++ 节点需要通过 CMake 进行编译,因此在编写完源文件后,还需要修改功能包中的 CMakeLists.txt 文件。

在文件中增加以下内容:

css 复制代码
add_executable(hellovscode src/hellovscode.cpp)

ament_target_dependencies(
  hellovscode
  "rclcpp"
)

install(TARGETS hellovscode
  DESTINATION lib/${PROJECT_NAME}
)

这几部分的作用分别如下:

  • add_executable(hellovscode src/hellovscode.cpp):声明生成一个名为 hellovscode 的可执行文件,对应源文件为 src/hellovscode.cpp
  • ament_target_dependencies(...):为该可执行文件添加依赖库,这里依赖的是 rclcpp
  • install(...):指定编译后可执行文件的安装路径,ROS2 运行节点时会从这个位置查找

也就是说,在 ROS2 的 C++ 功能包中,每增加一个节点源文件,通常都需要在 CMakeLists.txt 中增加对应的编译和安装配置


9.5 编译功能包

完成代码编写和 CMakeLists.txt 配置之后,需要返回到工作空间根目录进行编译。
假设当前位于 src 目录,那么可以先执行:

bash 复制代码
cd ..

然后使用 colcon build 进行编译:

bash 复制代码
colcon build

如果功能包没有报错,说明编译成功。


9.6 运行 C++ 节点

编译完成后,还需要先刷新环境变量:

bash 复制代码
source install/setup.bash

然后通过 ros2 run 命令运行刚刚编写的节点:

bash 复制代码
ros2 run pkg_hellovscode_cpp hellovscode

运行成功后,就可以在终端中看到节点输出的信息。


9.7 在已有 C++ 功能包中继续添加可执行文件

在实际开发中,一个功能包往往不只包含一个节点程序。
例如,前面已经有一个 hellovscode,现在还想在同一个功能包里再增加一个新的可执行文件 hellovscode2,这时就需要额外进行配置。

9.7.1 新建 C++ 文件

可以先在 src 目录下再新建一个 hellovscode2.cpp 文件。
代码如下:

cpp 复制代码
#include "rclcpp/rclcpp.hpp"

int main(int argc, char ** argv)
{
    rclcpp::init(argc, argv);

    auto node = rclcpp::Node::make_shared("hello_vscode_node_cpp");

    RCLCPP_INFO(node->get_logger(), "hello vscode2......");

    rclcpp::shutdown();

    return 0;
}

这个文件本质上也是一个独立的 ROS2 C++ 节点,只不过输出内容不同。

9.7.2 修改 CMakeLists.txt

如果只是新增了 .cpp 文件,但没有在 CMakeLists.txt 中注册对应的可执行文件,那么 ROS2 是无法直接运行它的。
因此需要打开功能包中的 CMakeLists.txt 文件,加入新的配置内容:

css 复制代码
add_executable(hellovscode src/hellovscode.cpp)
add_executable(hellovscode2 src/hellovscode2.cpp)

ament_target_dependencies(
  hellovscode
  "rclcpp"
)

ament_target_dependencies(
  hellovscode2
  "rclcpp"
)

install(TARGETS hellovscode
  DESTINATION lib/${PROJECT_NAME}
)

install(TARGETS hellovscode2
  DESTINATION lib/${PROJECT_NAME}
)

这里的含义是:

  • hellovscode 对应 hellovscode.cpp
  • hellovscode2 对应 hellovscode2.cpp

也就是说,每增加一个可执行 C++ 节点,都要在 CMakeLists.txt 中增加一组对应的配置,包括:

  • add_executable(...)
  • ament_target_dependencies(...)
  • install(...)

9.7.3 重新编译并运行

修改完成后,重新在工作空间根目录执行编译:

bash 复制代码
colcon build

然后刷新环境变量:

bash 复制代码
source install/setup.bash

最后运行新的节点:

bash 复制代码
ros2 run pkg_hellovscode_cpp hellovscode2

如果终端正常输出对应内容,就说明新的可执行文件已经配置成功。


十、总结

在 Ubuntu 22.04 下进行 ROS 2 Humble 开发时,VS Code 完全可以作为一款高效且实用的主力 IDE。它本身足够轻量,配合 Python、C/C++、CMake、ROS 等常用插件,并结合合理的 .vscode 配置文件,能够较好地解决 ROS 2 开发过程中常见的头文件报红、代码跳转失效、Python 包无法识别以及编译操作繁琐等问题。其中,c_cpp_properties.jsonsettings.jsontasks.json 等配置文件的完善,对于提升工程开发体验尤为重要。

除此之外,如果再结合 Terminator 进行多终端管理、使用 Git 管理项目版本,并掌握 Python 与 C++ 功能包的创建方法以及多可执行文件的配置方式,就基本能够搭建起一套较为完整的 ROS 2 本地开发环境。这样的环境不仅能够满足入门阶段的学习需求,也能够为后续更深入的项目开发、系统调试和工程管理打下良好基础。

对于刚开始接触 ROS 2 的同学来说,开发环境的配置虽然在前期会花费一定时间,但这一步非常值得。因为一旦环境搭建完善,后续无论是编写节点、调试接口、管理工程,还是阅读源码、开展功能扩展,整体效率都会明显提高。建议尽量在学习初期把开发环境、工具链和基本工作流一次性整理清楚,这样在后续学习 ROS 2 节点通信机制、功能包开发以及系统集成时,就可以把更多精力集中在技术本身,而不是反复被环境问题干扰。

相关推荐
移远通信1 小时前
Helios SDK开发指南__入门应用代码编写
python
天远Date Lab1 小时前
Python实战:基于天远二手车估值API构建企业车队资产数字化管理方案
大数据·人工智能·python
tryCbest1 小时前
Python之FastAPI 开发框架(第三篇):高级特性与实战
开发语言·python·fastapi
2301_776508721 小时前
分布式系统监控工具
开发语言·c++·算法
Irissgwe2 小时前
Linux进程信号
linux·服务器·开发语言·c++·linux进程信号
暮冬-  Gentle°2 小时前
C++与区块链智能合约
开发语言·c++·算法
Oueii2 小时前
C++中的代理模式实现
开发语言·c++·算法
艾莉丝努力练剑2 小时前
【Linux:文件 + 进程】理解IPC通信
linux·运维·服务器·开发语言·网络·c++·ide
ZTLJQ2 小时前
挖掘金矿:Python数据解析库完全解析
开发语言·python