夏天/isummer

Sun of my life !Talk is cheap, Show me the code! 追风赶月莫停留,平芜尽处是春山~

博客园 首页 新随笔 联系 管理

 

参考:

https://www.cnblogs.com/icmzn/p/18949572

 

vcpkg指令

 

包安装:

  export                 创建已安装端口的独立部署

  install                安装包

  remove                 卸载包

  x-set-installed        安装、升级或删除包,以便包与提供的包完全匹配

  upgrade                重新生成所有过时的包

 

包发现:

  x-check-support        测试在不生成端口的情况下是否支持端口

  depend-info            显示端口的依赖项列表

  list                   列出安装的库

  owns                   在安装的包中搜索文件的所有者

  x-package-info         显示有关包的详细信息

  portsdiff              区分提交之间端口版本中的更改

  search                 搜索可生成的包

  update                 列出可升级的包

 

包操作:

  add                    将依赖项添加到清单

  x-add-version          将版本添加到版本数据库

  create                 新建端口

  edit                   编辑端口,可以选择使用 %EDITOR%,默认为“代码”

  env                    创建用于开发或编译的干净 shell 环境

  format-manifest        Prettyfies vcpkg.json

  hash                   获取文件的 SHA256 或 SHA512

  x-init-registry        创建空白 GIT 注册表

  new                    新建清单

  x-update-baseline      将清单中 git 注册表的基线更新为这些注册表的 HEAD提交

 

其他:

  ci                     尝试生成用于 CI 测试的所有端口

  x-ci-verify-versions   检查版本数据库的完整性

  contact                显示联系人信息以发送反馈

  fetch                  从系统或 Internet 提取内容

  integrate              将 vcpkg 与计算机、项目或 shell 集成

 

有关更多帮助:

  help topics            显示帮助主题的完整列表

  帮助 <topic>         显示特定帮助主题

  help commands          显示命令的完整列表,包括此处未列出的罕见命令

  帮助 <command>       显示 <command> 的帮助详细信息


1 – 安装并设置 vcpkg

指定位置下载:

git clone https://github.com/microsoft/vcpkg.git

 

运行启动脚本

现在,你已经克隆了 vcpkg 存储库,请导航到 vcpkg 目录并执行启动脚本:

.\bootstrap-vcpkg.bat

 

 vcpkg 已安装并可供使用。

 

 

配置环境变量:

VCPKG_ROOT= D:\AINSTALLLIBs\vcpkg

设置 VCPKG_ROOT 可帮助 Visual Studio 查找 vcpkg 实例。 将它添加到 PATH 确保可以直接从 shell 运行 vcpkg 命令。

同时添加到:Path里

 

在VS2022工具的:命令行中,

验证:是否是安装的vcpkg

 

 

2 - 设置 Visual Studio 项目:确保在VS2022中显示vcpkg

(1)集成

PS D:\AINSTALLLIBs\vcpkg> .\vcpkg.exe  integrate install

Applied user-wide integration for this vcpkg root.

CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=D:/AINSTALLLIBs/vcpkg/scripts/buildsystems/vcpkg.cmake

All MSBuild C++ projects can now #include any installed libraries. Linking will be handled automatically. Installing new libraries will make them instantly available.

 

这样才能确保:项目属性继承了vcpkg的选项。

(2)关闭vs2022原生的vcpkg的工具。

       避免:原生的vcpkg和外部安装的vcpkg的冲突

 

 

3- 设置 Visual Studio 项目:全局使用

 

 

此源文件包含属于 <fmt/core.h> 库的 fmt 标头。 main() 函数调用 fmt::print() 将 "Hello World!" 消息输出到控制台。

       由于没有安装fmt库,因此提示:头文件不存在。

在VS2022工具的:命令行中,

验证:是否是安装的vcpkg

 

 

安装:fmt库

Vcpkg  install fmt

检查是否安装:vcpkg list

 

 

自动识别头文件

点击运行:

 

 

 

4. :清单模式使用

参考:

https://learn.microsoft.com/zh-cn/vcpkg/get_started/get-started-msbuild?pivots=shell-powershell

 

(1)在项目配置中打开:清单模式打开

 

此时:打开清单模式,则不适用全局的vcpkg库,因此代码提示找不到。

 

在VS2022的工具的:控制台窗口,输入:

 

运行以下命令来创建 vcpkg 清单文件 (vcpkg.json):

vcpkg new --application

 

多了2个文件,这是清单文件vcpkg.json。

vcpkg 读取清单文件,以了解要安装和与 MSBuild 集成的依赖项,从而提供项目所需的依赖项。

生成的 vcpkg-configuration.json 文件引入了一个基线,用于对项目的依赖项设置最低版本约束。 修改此文件超出了本教程的范围。 虽然在本教程中不适用,但建议将 vcpkg-configuration.json 文件保留在源代码管理之下,以确保不同开发环境中的版本一致性。

 

其中:vcpkg.json是添加的项目级别的库的配置

 

添加 fmt 包作为依赖项,只能使用以下方式,将fmt库添加到端口中。

vcpkg add port fmt

 

 

(1)  运行项目:

原理:如果 MSBuild 检测到 vcpkg.json 文件并在项目中启用了清单,作为预生成步骤,MSBuild 会安装清单的依赖项。 依赖项安装在项目的生成输出目录的 vcpkg_installed 目录中。 可以直接使用库安装的任何标头,安装的任何库将自动关联。

 

由于git的无法访问:

git config --global http.proxy http://127.0.0.1:7890

 git config --global https.proxy http://127.0.0.1:7890

因此:自动安装vcpkg.json中的添加的库的port

 

不再报错。

 

同样运行成功

 

 

或者:在项目根目录下,创建vcpkg.json文件

{
  "name": "codex3d",
  "version-string": "0.1.0",
  "dependencies": [
    "wxwidgets",
    "glew",
    "imgui"
  ]
}

执行:

vcpkg install --triplet x64-windows

则自动安装清单的vcpkg的局部项目级的依赖的库

 

5. 更改镜像源

 

 

项目临时使用:

以管理员打开 PowerShell,运行:

$env:VCPKG_REGISTRIES_OVERRIDE="https://gitee.com/microsoft/vcpkg"

参考:

  https://learn.microsoft.com/zh-cn/vcpkg/get_started/get-started-msbuild?pivots=shell-powershell

posted on 2026-05-28 21:28  夏天/isummer  阅读(43)  评论(0)    收藏  举报