文章目录
1. 安装
去GitHub上下载源码,然后点击安装脚本就可以了。
先决条件:
- Windows 7 或更高版本
- 用于 Windows 的 Git
安装过程:
-
Visual Studio 2015 更新 3 或更高版本(带英文语言包)
-
在“命令提示符”窗口中,为 vcpkg 的克隆实例创建目录。 如果打算为不同的生成目标安装库,最好在目录名称中包含目标。 建议使用短路径名称(不含空格)(如
C:\src\win32\
或C:\dev\iot\
),否则,某些端口生成系统可能会出现路径问题 。 在命令窗口中,切换到刚刚创建的目录。 -
从 GitHub 克隆 vcpkg 存储库:https://github.com/Microsoft/vcpkg。
git clone https://github.com/microsoft/vcpkg
此命令在
vcpkg
子目录中创建存储库的本地副本。 此位置是此 vcpkg 克隆的 vcpkg 根目录。 -
下载完成后,在“命令提示符”窗口切换到
vcpkg
目录。 -
在 vcpkg 根目录下,运行 vcpkg 引导程序命令:
bootstrap-vcpkg.bat
引导程序将使用 Microsoft C/C++ 工具、库和 Windows SDK 的位置配置 vcpkg。
更新 vcpkg
vcpkg 包管理器在 GitHub 上定期更新。 若要将 vcpkg 的克隆更新到最新版本,请从 vcpkg 根目录运行 git pull
。 此命令会将 vcpkg 的副本与 GitHub 上的版本同步。 下载完成后,再次运行引导程序。 引导程序会重新生成 vcpkg 程序,但保留已安装的库。
卸载 vcpkg
若要卸载 vcpkg,只需删除 vcpkg
目录。 删除此目录会卸载 vcpkg 分发以及 vcpkg 已安装的所有库。
但是,如果已执行 vcpkg integrate install
,则应执行 vcpkg integrate remove
来确保在删除文件夹之前已清理集成 。
2. 使用
命令
Command | 描述 |
---|---|
vcpkg search [pat] | 搜索可安装的包 |
vcpkg install <pkg>... | 安装包 |
vcpkg remove <pkg>... | 卸载包 |
vcpkg remove --outdated | 卸载所有过期包 |
vcpkg list | 列出已安装的包 |
vcpkg update | 显示用于更新的包列表 |
vcpkg upgrade | 重新生成所有过期包 |
vcpkg hash <file> [alg] | 通过特定算法对文件执行哈希操作,默认为 SHA512 |
vcpkg integrate install | 使已安装包在用户范围内可用。 首次使用时需要管理权限 |
vcpkg integrate remove | 删除用户范围的集成 |
vcpkg integrate project | 为使用单个 VS 项目生成引用 NuGet 包 |
vcpkg export <pkg>... [opt]... | 导出包 |
vcpkg edit <pkg> | 打开端口进行编辑(使用 %EDITOR%,默认为“code”) |
vcpkg create <pkg> <url> [archivename] | 创建新程序包 |
vcpkg cache | 列出缓存的已编译包 |
vcpkg version | 显示版本信息 |
vcpkg contact --survey | 显示联系信息,以便发送反馈。 |
选项
选项 | 描述 |
---|---|
--triplet <t> | 指定目标体系结构三元组。 (默认:%VCPKG_DEFAULT_TRIPLET% ,另请参阅 vcpkg help triplet ) |
--vcpkg-root <path> | 指定 vcpkg 根目录(默认:%VCPKG_ROOT% ) |
3. 集成vcpkg
Windows 上的 Visual Studio 集成
从 vcpkg 根目录,运行 vcpkg integrate install
来配置 Visual Studio,以便按用户找到所有 vcpkg 头文件和二进制文件。 无需在 Visual Studio 中编辑 VC + + 目录路径。 如果有多个 vcpkg 克隆,则你从中运行此命令的克隆将成为新的默认位置。
现在,只需键入文件夹/标头名称即可轻松加入标头,并且自动完成功能将帮助你完成这一切。 无需执行任何额外的步骤即可链接到库或添加项目引用。 下图演示了 Visual Studio 查找 azure-storage-cpp 标头的方法。 Vcpkg 将其标头置于 /installed 子文件夹中,由目标平台予以分区。 下图显示库的 /was 子文件夹中包含文件的列表:
Linux 或 macOS 上的 Visual Studio Code 集成
在 shell 或“终端”窗口中,将目录更改为 vcpkg 根目录。 然后运行./vcpkg integrate install
,在 Linux 或 macOS 上配置 Visual Studio Code。 此命令将设置 vcpkg 工具和库的位置,并对源文件启用 IntelliSense。
删除 vcpkg 集成
如果已使用 integrate 选项,则应在删除 vcpkg 实例之前删除该集成。 若要删除和清理该集成,请将目录更改为 vcpkg 根目录。
- 在 Windows 上,运行
vcpkg integrate remove
,确保清除该集成。 - 在 Linux 或 macOS 上,运行
./vcpkg integrate remove
命令。
使用举例
我现在的场景是我需要 libpng 来进行开发,输入命令:vcpkg install libpng
来安装,可以看到他在开始自动下载。
注意我们可以使用.\vcpkg help triplet
来看库支持的模式。
4. 详细介绍
4.1 新增库
使用指令:vcpkg help triplet
可以看到都支持什么平台。
下载某一个平台的包:.\vcpkg.exe install jsoncpp:x64-windows
(base) PS C:\Users\cds> vcpkg help triplet
Available architecture triplets
VCPKG built-in triplets:
arm-uwp
arm64-windows
x64-linux
x64-osx
x64-uwp
x64-windows-static
x64-windows
x86-windows
VCPKG community triplets:
arm-ios
arm-linux
arm-mingw-dynamic
arm-mingw-static
arm-windows
arm64-ios
arm64-linux
arm64-mingw-dynamic
arm64-mingw-static
arm64-osx
arm64-uwp
arm64-windows-static-md
arm64-windows-static
ppc64le-linux
s390x-linux
wasm32-emscripten
x64-ios
x64-mingw-dynamic
x64-mingw-static
x64-openbsd
x64-osx-dynamic
x64-windows-static-md
x86-freebsd
x86-ios
x86-mingw-dynamic
x86-mingw-static
x86-uwp
x86-windows-static-md
x86-windows-static
x86-windows-v120
4.2 删除库
.\vcpkg.exe remove jsoncpp
注意:
这个时候只是移除了默认的x86-winodws版本的文件,如果有其他平台的版本需要移除,需要制定相应的triplet。
移除也只是移除了二进制程序库而已,源码包和解压缩的源码并没有删除。
4.3 查看已经安装的列表
.\vcpkg.exe list
4.4 更新已经安装的开源库
一般有两种更新方式。一个是update指令,可以显示可以升级的开源库的列表。另一个是upgrade的指令,会重新编译所有需要更新的包。