通用命令选项

大多数 vcpkg 命令都接受一组控制工具横切方面的通用选项。 并非所有选项都会影响每个命令。 例如,不下载任何文件的命令将不会受到更改下载目录的影响。

选项

--x-asset-sources=<config>

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

指定资产缓存的缓存配置。

--binarysource=<config>

添加二进制缓存的源。

此选项可以多次指定;有关多个二进制源如何交互的信息,请参阅二进制缓存文档。

--x-buildtrees-root=<path>

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

指定存储中间构建文件(如对象或解压缩的源代码)的临时路径。

默认为 vcpkg 根文件夹下的 buildtrees/

--x-cmake-configure-debug=<debugger-pipe>[;semicolon;port;list]

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

在上游构建系统的 CMakeLists.txt 中启用 CMake 的 --debugger,如在 vcpkg_cmake_configure 内。

<debugger-pipe> 值在 CMake 命令行中作为 --debugger-pipe 传递。

如果有分号分隔的端口列表,则调试程序仅用于该列表中的端口。 否则,该项将用于所有端口。

三元组变量 VCPKG_CMAKE_CONFIGURE_OPTIONS 用于将选项传递给内部 CMake configure 调用。 因此,它不适用于覆盖 VCPKG_CMAKE_CONFIGURE_OPTIONS 的自定义三元组。 手动传递调试选项或改为将选项附加到 VCPKG_CMAKE_CONFIGURE_OPTIONS

--x-cmake-debug 不同,不会有输出指示构建正在等待调试器连接。 输出会在 Configuring <triplet> 处停滞。

尽管所有端口都应在端口文件内部调用 CMake,以从 CMake 工具链获取编译标志。 此命令主要用于实际使用 CMake 作为其构建系统的端口。

--x-cmake-debug=<debugger-pipe>[;semicolon;port;list]

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

启用 CMake 的 --debugger,同时运行三元组文件(例如:x64-windows.cmake)或 portfile.cmake 文件等直接调用的 CMake 脚本。

<debugger-pipe> 值在 CMake 命令行中作为 --debugger-pipe 传递。

如果有分号分隔的端口列表,则调试程序仅用于该列表中的端口。 否则,该项将用于所有端口。

注意:如果在 vcpkg 的输出中观察到 Waiting for debugger client to connect...,可以附加调试器,并且执行将暂停,直到调试器已连接。

--downloads-root=<path>

指定保留下载的工具和源代码存档的位置。

默认为 VCPKG_DOWNLOADS 环境变量。 如果该项未设置,则默认为 vcpkg 根文件夹下的 downloads/

--feature-flags=<flag1>,...

可以将此变量设置为功能标志列表,以选择加入试验性行为。

--host-triplet=<triplet>

指定主机三元组

默认为 VCPKG_DEFAULT_HOST_TRIPLET 环境变量。 如果该项也未设置,则会根据主机体系结构和操作系统推断该值。

--x-install-root=<path>

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

指定布置已安装包的路径。

经典模式下,默认为 vcpkg 根文件夹下的 installed/

清单模式下,默认为清单文件夹下的 vcpkg_installed/

--x-manifest-root=<path>

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

指定包含 vcpkg.json 的目录。

默认从当前工作目录向上搜索找到最近的 vcpkg.json

--overlay-ports=<path>

指定包含覆盖端口的目录。

可以多次指定此选项;端口将解析为第一个匹配项。

--overlay-triplets=<path>

指定包含覆盖三元组的目录。

可以多次指定此选项以添加多个目录;三元组将按名称解析为第一个匹配项。

--x-packages-root=<path>

注意

本部分介绍 vcpkg 的一项试验性功能,该功能随时可能会更改或移除。

指定在最终安装之前暂存中间包文件的临时路径。

默认为 vcpkg 根文件夹下的 packages/

--triplet=<triplet>

指定目标体系结构三元组

默认为 VCPKG_DEFAULT_TRIPLET 环境变量。 如果该项未设置,则会根据主机体系结构和操作系统推断。

在 Windows 操作系统上,由于遗留原因,体系结构始终推断为 x86。

注意

2023 年 9 月及之后发布的所有版本都将默认使用 Windows 上的主机三元组,而不是 x86-windows。

--vcpkg-root=<path>

指定 vcpkg 根文件夹。

默认为包含 vcpkg 程序的目录。 目录必须是有效的 vcpkg 实例,例如 https://github.com/microsoft/vcpkggit clone。 此选项可用于直接从构建文件夹运行该工具的自定义构建副本。

响应文件 (@<file>)

vcpkg 命令行接受包含换行符分隔的命令行参数的文本文件。

该工具的行为就像将文件中的项目拼接到命令行中代替 @ 引用一样。 响应文件不能包含其他响应文件。