在 Visual Studio 2026 中激活 vcpkg 实现自动安装依赖

最近更新于 2026-05-20 00:45

前期准备

确保在 Visual Studio Installer 中已经安装vcpkg 包管理器
file

开始菜单搜索打开Developer Command Prompt
file

执行

vcpkg integrate install

显示:
All MSBuild C++ projects can now #include any installed libraries. Linking will be handled automatically. Installing new libraries will make them instantly available.
表示 vcpkg 已经融入 VS 环境中。
file

vcpkg 清单

我这里有一个 C++ 项目,打开它的属性可以看到有 vcpkg 项。
file

📊 Visual Studio vcpkg 属性页设置项一览表

分组 设置项名称 (Property) 常见推荐值 核心功能与底层原理简述
General
(通用)
Use Vcpkg
(使用 Vcpkg)
总开关:控制是否将 vcpkg 的头文件和库路径自动注入当前项目。若设为“否”,整个组件失效。
Use Vcpkg Manifest
(使用 Vcpkg 清单)
模式切换:决定是否激活清单模式。设为“是”时,VS 会强制读取项目根目录下的 vcpkg.json 并交出依赖控制权。
Install Vcpkg Dependencies
(安装 Vcpkg 依赖)
自动化开关:点击“生成”时,VS 是否在后台自动运行 vcpkg install 去下载并编译你缺失的第三方库。
Use AutoLink
(使用自动链接)
解放双手:MSVC 特性。开启后你只需要 #include 头文件,底层脚本会自动帮你关联对应的 .lib 文件,无需手动在链接器中配置库名字
App-locally deploy DLLs
(应用程序本地部署 DLL)
动态库复制:若依赖项含有 .dll 动态库,编译成功后自动将其复制到你的输出目录(如包含 .exe.arx 的文件夹),防止运行时报错。
Use built-in app-local…
(使用内置本地部署)
机制微调:指定使用 vcpkg 专属的高效 MSBuild 脚本去执行动态库复制(推荐设为“否”),还是使用 VS 默认的通用部署机制。
Installed Directory
(已安装目录)
留空 存储重定向:自定义本地编译成果的存放路径。默认留空即可,系统会自动在项目根目录下生成 vcpkg_installed 文件夹。
Additional Options
(附加选项)
留空 高级调教:向后台的 vcpkg install 命令行传递额外的自定义实验性参数。
Target &
Configuration

(目标与配置)
Use Static Libraries
(使用静态库)
形态决定:控制 vcpkg 为你编译/提供哪种库。“是”代表提供 .lib 静态库(代码直接吞进你的二进制中);“否”代表提供动态库。
Use Dynamic CRT
(使用动态 C 运行时库)
CRT 握手:控制第三方库链接微软 C 运行时的模式。“是”对应编译器中的 MD/MDd 选项(你的环境当前状态);“否”对应 MT/MTd
Triplet
(三元组类型)
x64-windows-static-md 物理灵魂:明确定义你的目标平台架构特征。由上述的“架构(x64) + 静态库(static) + 动态运行时(md)”组合由 VS 自动推导填充。
Host Triplet
(主机三元组类型)
留空 交叉编译配置:运行编译任务的宿主机架构。默认留空即可,会自动采用你当前 Windows 系统的 64 位环境。
Vcpkg Configuration
(Vcpkg 配置)
<不同选项> 环境映射:自动将项目的 Debug/Release 构建配置映射到 vcpkg 对应的调试版和发行版第三方库上。

在项目下创建 vcpkg.json 文件。
name 指定项目名称,不允许大写字母,允许小写、数字、连字符,开头和结尾不允许是连字符。
version-string 指定项目版本。
builtin-baseline 指定 vcpkg 提交的哈希值(相当于版本号),vcpkg 项目开源地址:https://github.com/microsoft/vcpkg ,我这里使用的当前最新一次 Release 发布时的 Commit 哈希值。
file
后面就是指定要通过 vcpkg 安装的依赖包和强制版本,可以搜索包名和看到历史版本:https://vcpkg.io/en/packages

{
  "name": "iyatt-yx-cad-tools",
  "version-string": "1.0.0",
  "builtin-baseline": "56bb2411609227288b70117ead2c47585ba07713",
  "dependencies": [
    "gettext"
  ],
  "overrides": [
    {
      "name": "gettext",
      "version": "0.22.5"
    }
  ]
}

代理

vcpkg 下载的来源站遍布全世界,很多库来源于国外,大陆下载可能非常慢,一般要设置代理。
我这里使用是对 VS 设置代理,这样通过 VS 运行的 vcpkg 也能使用代理。
新建一个文本文件写入
http://127.0.0.1:10808 这里替换成自己的代理,这里我是本地的 v2rayN 开的代理。

C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\devenv.exe 是 VS 的启动文件路径,可以通过快捷方式的属性获取
file

@echo off
set HTTP_PROXY=http://127.0.0.1:10808
set HTTPS_PROXY=http://127.0.0.1:10808

start "" "C:\Program Files\Microsoft Visual Studio\18\Community\Common7\IDE\devenv.exe"

保存文件后,将扩展名改为 .bat,这样双击就会自动设置代理并启动 VS。
file

测试

如果不是通过 VS 内添加的 vcpkg.json 文件,VS 可能没识别到,可以在项目名上右键添加现有项。
file

在项目名上右键生成或重新生成,在编译的同时会触发 vcpkg 安装依赖。
file
file

首次安装时间久一点,如果编译也没出错,就显示生成成功了。
file

在 Visual Studio 2026 中激活 vcpkg 实现自动安装依赖
Scroll to top
打开目录