Visual Studio Code 是一个轻量级的集成开发环境。它可用于在 Windows、Linux 和 macOS 上开发 C/C++(以及其他编程语言)项目。
本文档描述了如何安装 Visual Studio Code 以及应使用哪些插件来配合 SUMO 代码库进行工作。
安装#
下载#
Visual Studio Code 的专有二进制文件可以从 这里 下载。也有开源二进制文件可以从 这里 下载(MIT 许可证)。
插件#
Visual Studio Code 的标准安装仅提供用于 C/C++ 和 Python 源代码编辑的基本支持。为此,Visual Studio Code 可以通过插件进行扩展以提供额外的功能。我们(至少)推荐以下插件:
- C/C++ (来自 Microsoft),用于简化代码浏览、启用代码补全和调试
- CMake Tools (来自 Microsoft),用于利用 CMake 构建支持
- Python (来自 Microsoft),用于在 Python 中利用代码浏览、代码补全和调试
- CMake (来自 twxs),在编辑
CMakeLists.txt文件时提供对 CMake 规范语言的支持
您不需要手动选择它们。通常,只需打开一些 .cpp 和 .py 文件,然后安装 Visual Studio Code 推荐的插件即可。

成功安装这些插件后,您可能需要重新启动 Visual Studio Code 才能使用它们。
配置#
在 Visual Studio Code 中打开 SUMO 代码库之前,您应确保 CMake Tools 插件已正确配置。单击插件的齿轮图标可以打开扩展设置窗口。

请注意,您可以为 用户 或当前的 工作区 设置这些选项,从而影响工作区中的所有 CMake 项目。
我们建议修改以下设置:
- Cmake: Build Directory:设置为您的源外构建目录,例如
${workspaceFolder}/build/vscode/${buildType} - Cmake: Parallel Jobs:如果您有多个 CPU 或多个 CPU 核心,请设置为
2 * N的值,其中N表示您机器上的核心数,例如2
使用 SUMO 仓库#
您现在可以通过 File -> Open ... 在 Visual Studio Code 中打开本地的 SUMO git 仓库,并将其指向仓库所在的目录。
CMake 配置#
CMake Tools 插件应自动识别 SUMO 顶级目录中的 CMakeLists.txt 文件,并触发 CMake 配置以查找编译器和可用库。您可以在底部的输出窗口中查看该过程的结果。

您的机器上可能安装了不同的 C/C++ 编译器。在 CMake 中,这些不同的编译器安装被称为编译器套件 (compiler kits)。CMake Tools 插件允许您通过打开命令面板(在 macOS 上使用 Command + Shift + P)并输入 CMake: Select a Kit 来在不同的编译器套件之间切换。
SUMO 提供某些在编译期间可以启用或禁用的功能。CMake 将这些功能称为 变体 (variants)。这些变体在 SUMO 仓库顶级目录的 cmake-variants.yaml 文件中定义。该文件描述了 CMake 配置过程的某些功能或属性。在 Visual Studio Code 中,您可以使用命令面板并输入 CMake: Select Variant 轻松地在不同的预定义变体之间切换。您应使用此功能在 SUMO 的 release 和 debug 构建之间快速切换。
CMake 构建#
可以通过使用命令面板 (CMake: Build) 或按 F7 来触发构建。可以通过命令面板 (CMake: Build Target) 或按 Shift + F7 来触发特定目标的构建过程。您可以在下半部分的输出窗口中跟踪构建结果。
运行和调试#
可以在 Run 菜单中启动生成的二进制文件(带或不带调试器),或者按 F5 或 Ctrl + F5。在下一步中,您会很快注意到 Visual Studio Code 需要定义运行配置。这些配置在 .vscode/launch.json 配置文件中定义。要为 sumo 生成一个好的 launch.json,您可以运行脚本 tools/devel/generate_vscode_tasks.py(请注意它会覆盖任何现有的 launch.json)。您也可以单击底部的 Add Configuration... 按钮为 SUMO 添加新配置。
以下是在 macOS 上启动 sumo 的简单配置示例:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Start SUMO ",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/bin/sumo",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "lldb"
}
]
}
Note
如果您尝试在 macOS 上使用运行配置启动 sumo-gui,启动将会失败,因为它找不到 XQuartz 服务器实例的正确 DISPLAY 变量。一种解决方法似乎是在上述配置中定义一个 preLaunchTask,为调试会话导出 DISPLAY 变量。但是,这需要更多测试。
一般说明#
键盘快捷键#
Visual Studio Code 设计为主要使用键盘操作,因此开始记忆一些最重要的快捷键是非常好的主意:
- 在命令面板中显示所有命令:Shift + Command + P
- 转到文件:Command + P
- 开始构建:F7
- 开始调试:F5
通用文档#
关于 Visual Studio Code 使用的通用文档可以在互联网上的各种地方找到,例如 Visual Studio Code Tutorial for Beginners - Introduction 或 Visual Studio Code Intro & Setup。
