vcpkg管理C++库分三步:下载编译vcpkg、集成到构建系统(VS全局或CMake指定toolchain)、安装并链接库;支持跨平台、纯本地构建,无需系统包管理器。

用 vcpkg 管理 C++ 第三方库,核心就三步:装 vcpkg、集成到项目、安装并链接库。它不依赖系统包管理器,纯本地构建,跨平台支持好(Windows/Linux/macOS 都行),特别适合 Visual Studio 和 CMake 项目。
一、下载与编译 vcpkg
vcpkg 是一个开源的 C++ 包管理器,本身是源码形式,需要先克隆并自行构建:
- 打开终端(Windows 推荐 PowerShell 或 CMD,Linux/macOS 用 bash/zsh)
- 执行:git clone https://github.com/microsoft/vcpkg.git
- 进入目录:cd vcpkg
- 运行引导脚本:.\bootstrap-vcpkg.bat(Windows)或 ./bootstrap-vcpkg.sh(Linux/macOS)
完成后会生成 vcpkg.exe(Win)或 vcpkg(Linux/macOS),这就是主命令行工具。
二、全局或项目级集成
集成目的是让构建系统(如 MSBuild、CMake)能自动找到 vcpkg 提供的头文件和库。推荐两种方式:
立即学习“C++免费学习笔记(深入)”;
- VS 全局集成(仅 Windows + Visual Studio):运行 .\vcpkg integrate install,之后新建/打开 VS 项目时会自动启用 vcpkg 库
-
CMake 项目集成(推荐,跨平台):在 CMakeLists.txt 开头添加:
set(CMAKE_TOOLCHAIN_FILE "path/to/vcpkg/scripts/buildsystems/vcpkg.cmake")
把 path/to/vcpkg 替换为你实际的 vcpkg 根目录路径
三、安装与使用第三方库
安装库很简单,例如装 fmt(现代 C++ 格式化库):
- 命令:.\vcpkg install fmt:x64-windows(Windows x64)
或 ./vcpkg install fmt:x64-linux(Linux)
或 ./vcpkg install fmt:x64-osx(macOS) - 安装后,头文件自动放在 installed/
/include ,库文件在 installed//lib - CMake 中无需手动 find_package(除非库提供 config 文件),直接 target_link_libraries(myapp PRIVATE fmt) 即可
常用命令补充:
.\vcpkg search zlib —— 搜索含 zlib 的包
.\vcpkg list —— 查看已装库
.\vcpkg remove zlib —— 卸载
四、处理多配置与静态/动态链接
vcpkg 默认构建静态库(static),若需动态链接,安装时加 -dynamic 后缀:
- .\vcpkg install opencv:x64-windows-dynamic
- 注意:动态库需确保运行时 DLL 在 PATH 中(vcpkg 会提示复制位置)
- 不同架构/配置用不同 triplet,如 x86-windows、x64-windows-static、arm64-windows
多个 triplet 可共存,互不影响,vcpkg 自动隔离。
基本上就这些。vcpkg 上手快、文档全、生态活跃,对 C++ 工程化帮助很大。不复杂但容易忽略集成步骤——只要 CMake 或 VS 正确指向 toolchain,后续用库就跟写标准库一样自然。











