首页 > 其他分享 >[转]VCPKG

[转]VCPKG

时间:2023-04-10 09:33:37浏览次数:50  
标签:x86 windows x64 vcpkg integrate static VCPKG

原文连接:https://blog.csdn.net/sexyluna/article/details/115285405

1. 安装
去GitHub上下载源码,然后点击安装脚本就可以了。

先决条件:

Windows 7 或更高版本
用于 Windows 的 Git
安装过程:

vcpkg的GitHub主页在这里:https://github.com/microsoft/vcpkg

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
1
注意:

这个时候只是移除了默认的x86-winodws版本的文件,如果有其他平台的版本需要移除,需要制定相应的triplet。
移除也只是移除了二进制程序库而已,源码包和解压缩的源码并没有删除。

4.3 查看已经安装的列表
.\vcpkg.exe list
1
4.4 更新已经安装的开源库
一般有两种更新方式。一个是update指令,可以显示可以升级的开源库的列表。另一个是upgrade的指令,会重新编译所有需要更新的包。

标签:x86,windows,x64,vcpkg,integrate,static,VCPKG
From: https://www.cnblogs.com/lyggqm/p/17301779.html

相关文章

  • vcpkg笔记
    vcpkg笔记vcpkg是一个C++的包管理器。包管理器是专门管理一些代码库的。比如一些大佬们开源的一些NB的框架,我们可以用vcpkg将他们放到自己的项目中。然后就可以直接用了......
  • C++的库管理工具:vcpkg
    vcpkg的安装gitclone"地址"添加环境变量在vcpkg目录下/vcpkg/bootstrap-vcpkg.bat嵌入VS在CMD或POWERSHELLvcpkgintegrateinst......
  • WSL中使用vcpkg安装pcl库出现编译失败的原因
    在wsl使用vcpkginstallpcl安装时,出现了BUILD_FAILED失败提示,查看log文件出现如下的错误:compilationproblem,c++:internalcompilererror:Killed(programcc1......
  • CGAL安装教程(非vcpkg)
    本次分享的是CGAL的安装教程,采用的是官方说的第二种方式,即:  安装流程如下:1.首先在CGAL的官方Github网址中下载CGAL和GMPandMPFRlibrariesCGAL从5.0版本开......
  • 【vcpkg】使用vcpkg安装库
    https://blog.csdn.net/cjmqas/article/details/79282847使用vcpkg查看vcpkg支持的开源库列表执行命令.\vcpkg.exesearch安装一个开源库这里的“安装”其实是指下......
  • Manifest使用示例2 - 依赖多个vcpkg 的历史版本库
    以下示例将提供在自定义工程中使用vcpkg中fmt、sqlite3、zlib的固定版本。Manifest模式-CMake工程1.示例根目录:E:/test_manifest,文件目录结构如下:E:/ |--test......
  • VCPKG 特性 - Versioning
    背景在实际项目中,您的项目代码需要依赖第三方库的历史版本,以往的做法是将vcpkg回退到需要使用的版本,或者是自定义版本,这会导致其他的库也回退到以前的版本。现在vcpkg提......
  • vcpkg
    vcpkg的使用1.安装vcpkggitclonehttps://github.com/Microsoft/vcpkg.gitcdvcpkgbootstrap-vcpkg.bat设置环境变量——将vcpkg.exe文件所在目录加入到环境变量PATH中......