Vcpkg 使用全攻略: 支持 VS Code, Visual Studio 和 CLion
在 C++开发中, 管理第三方库一直是一项复杂的任务. Vcpkg 是一个开源的 C++包管理工具, 可以简化库的安装和管理过程. 本文将详细介绍 Vcpkg 的安装, 使用方法, 并展示如何在 CMake 项目中集成 Vcpkg.
为什么选择 Vcpkg
与其他语言相比, C++缺乏官方的包管理工具, 开发者通常需要手动下载, 编译和安装第三方库, 效率低且容易出错. 近年来, 出现了诸如 Conan, Vcpkg, Hunter 等包管理工具, 它们各有特点:
- Conan: 适合企业级自托管的包管理需求.
- Hunter: 专注于嵌入式开发场景.
- Vcpkg: 更适合个人开发者和开箱即用的场景.
相较于其他工具, Vcpkg 具有以下优势:
- 跨平台支持: 支持 Windows, Linux 和 macOS 等多个平台.
- 易用性强: 无需复杂配置, 即可快速上手, 并且与主流 IDE(如 VS Code, Visual Studio, CLion)深度集成.
- 丰富的库支持: 涵盖数千种 C++开源库, 满足多样化需求.
- 社区活跃: 由微软开发和维护, 社区更新频繁, 确保工具的可靠性和安全性.
安装 Vcpkg
在 Ubuntu 上安装 Vcpkg
环境要求
在开始安装之前, 请确保以下环境已准备好:
- 操作系统: Ubuntu 24.04(适用于 Linux 用户)
- CMake: 3.28.3 或更高版本
- GCC: 13.2.0
- Make: 4.3
如果没有安装, 则可以通过以下命令安装:
1. 克隆 Vcpkg 仓库
通过 Git 克隆 Vcpkg 代码:
2. 初始化 Vcpkg
2. 配置环境变量
将 Vcpkg 添加到系统的 PATH
环境变量中:
在 Windows 上安装 Vcpkg
环境要求
在开始安装之前, 请确保以下环境已准备好:
- 操作系统: Windows 11
- 集成开发环境, 选择其中一个即可
- Visual Studio 2022: 微软开发的功能强大的 IDE
- CLion: Jetbrains 出品的跨平台 C++ IDE
1. 下载并安装 Vcpkg
在 Windows 上安装 Vcpkg 相对简单, 首先需要从 Vcpkg 的官方 GitHub 仓库克隆代码:
2. 初始化 Vcpkg
运行bootstrap-vcpkg.bat
会自动生成可执行文件vcpkg.exe
.
2. 设置环境变量(可选)
建议将vcpkg
目录路径添加到系统的环境变量中, 以便可以从任何位置调用它.
- 打开"系统属性"对话框.
- 转到"高级"选项卡, 点击"环境变量".
- 在"系统变量"部分中找到
Path
, 点击"编辑". - 添加 Vcpkg 路径.

如何使用 Vcpkg
以安装fmt
库为例:
1. 搜索库:
输出示例:
2. 安装库:
输出示例:
3. 列出已安装库
样例输出:
在 CMake 中使用 Vcpkg
Demo 工程文件
创建一个名为vcpkg_demo
的项目, 该项目使用了第三方库libfmt. 项目包含以下文件:
- CMakeLists.txt: 配置文件
- main.cpp: 源代码
具体内容如下
CMakeLists.txt
main.cpp
通过 CMake 命令行参数使用 Vcpkg
使用以下命令生成并构建项目:
在主流 IDE 中使用 Vcpkg
如下所示的步骤配置起来略显繁琐, 在进阶部分有一种更通用, 更方便的配置方法, 不过他需要更新的 CMake 版本支持. 感兴趣的读者可以直接跳过这一节.
在 VS Code 中使用 Vcpkg
安装 C++扩展包:
- 打开 VS Code, 前往扩展市场, 搜索并安装"C/C++ Extension Pack".
- 打开 VS Code, 前往扩展市场, 搜索并安装"C/C++ Extension Pack".
配置 Vcpkg 路径:
- 在项目根目录下创建或编辑
.vscode/settings.json
文件:
- 在项目根目录下创建或编辑
生成和构建项目:
- 打开命令面板(Ctrl+Shift+P), 选择"CMake: Configure"来生成项目.
- 选择"CMake: Build"来进行编译.
- 如果中途有失败, 可以删除’build’目录重试
- 打开命令面板(Ctrl+Shift+P), 选择"CMake: Configure"来生成项目.
在 Visual Studio 中使用 Vcpkg
自动检测:
- 如果已将 Vcpkg 路径添加到环境变量, Visual Studio 会自动检测并集成 Vcpkg.
手动配置:
- 在 visual studio 中, 打开 “工具” -> “选项”.
- 如果更新了配置发现还是找不到
fmt
库, 则删除out
目录, 重新生成项目.
- 在 visual studio 中, 打开 “工具” -> “选项”.
在 CLion 中使用 Vcpkg
指定 CMake Toolchain
配置 CMake Toolchain:
打开 CLion, 前往"File" > “Settings” > “Build, Execution, Deployment” > “CMake”.
在"CMake options"中添加以下内容:
同步并构建项目:
- 右击
CMakeLists.txt
文件并选择Reload CMake Project
按钮. - 也可以从 CMake 插件重载
- 右击
CLion Vcpkg 插件
CLion 中有专门针对 Vcpkg 的插件.
- 在插件配置中添加一个 Vcpkg 目录
- 通过插件浏览/安装 Vcpkg 库
进阶使用
使用 CMakePresets.json
简化配置
CMake Presets 是 CMake 3.19 版本引入的新特性, 它可以帮助我们简化 CMake 的配置.
在项目根目录下面创建文件 CMakePresets.json
文件内容如下:
简要解释:
configurePresets
: 用于定义配置阶段的 Preset, 包含编译器生成器, 构建目录及编译选项.name
: 配置的名称generator
: 指定生成器类型binaryDir
: 指定生成的构建文件的目录.cacheVariables
: 定义 CMake 的缓存变量, 例如CMAKE_TOOLCHAIN_FILE
和CMAKE_BUILD_TYPE.
condition
: 限定条件, “Linux” 表示该配置仅适用于 Linux 系统.
buildPresets
: 用于定义构建阶段的 Preset, 关联某个configurePreset
, 并指定构建选项.name
: 构建配置名称.configurePreset
: 关联的配置阶段 Preset 名称.jobs
: 指定并行构建任务数condition
: 限定条件
命令行中使用
在 Windows 下需要更换为:
VS Code 中使用 CMakePresets.json
- 打开命令面板(快捷键:
Ctrl+Shift+P
) - 输入并选择’CMake: Select Configure Preset'
- 也可以通过状态栏的工具点击选择
Visual Studio 中使用 CMakePresets.json
Visual Studio 2022 对 CMake Preset 的支持做的很好, 会自动加载配置, 使用起来非常方便.

CLion 中使用 CMakePresets.json
- 在 “File” > “Settings” > “Build, Execution, Deployment” > “CMake”
- 启用配置(Enable Profile)
- 启用之后重载 CMake, 即可看到新增的选项
通过 vcpkg.json 为项目单独定义依赖版本
如果存在多个项目对同一个库的依赖版本不一致的情况, 则可以使用vcpkg.json
为项目指定依赖库的版本.
1. 创建项目独立配置
此时, 会在工程目录下生成一个 vcpkg.json
文件, 由于目前没有指定依赖, 所以文件内容为空.
还有一个 vcpkg-configuration.json
文件, 用于记录工程所使用的库的版本信息.
内容如下:
该文件随着 vcpkg 版本的更新可能会有变化.
2. 指定项目依赖
此时, vcpkg.json
文件内容如下:
3. 安装依赖
总结
本文系统地介绍了 Vcpkg 的安装, 使用及其在 C++ 项目中的集成方法. 通过 Vcpkg, 开发者可以高效地管理第三方库, 省去手动配置依赖的繁琐过程, 大幅提升开发效率. 本文介绍了 Vcpkg 的优势, 如何安装, 如何与 CMake 集成, 如何在主流 IDE 中使用, 以及CMakePresets.json
和通过 vcpkg.json 为项目单独定义依赖版本.
通过本教程, 读者不仅能够快速上手 Vcpkg, 还能灵活地将其集成到各类开发环境中. 如果本文对您有所帮助, 欢迎点赞或分享, 更多精彩内容请关注 Vcpkg 官方文档!
Tags: