首页 > 解决方案 > 克隆使用 vcpkg 的项目时如何安装软件包

问题描述

我正在尝试 vcpkg 包管理器,但我遇到了一些问题。我有一个使用 cmake 和 vcpkg 的 c++ 项目,并使用 vcpkg 来安装 cache2 包。现在一切正常,但是一旦我推送项目并克隆它,我就找不到如何恢复已安装的软件包。

我所做的是这样的:

直到这里,当我推送和克隆项目时,一切正常。

现在好像什么都没有安装,也不希望大家克隆的时候把所有的包都一一安装。克隆时是否有办法自动安装所有软件包?

标签: c++gitcmakevcpkg

解决方案


我找到了一个使用 vcpkg 清单的不错的解决方案,它仍然是一个实验性功能,但我还没有遇到任何问题。为了使用清单,请执行以下操作:

  • 在您的根文件夹中添加一个包含以下内容的 vcpkg.json 文件:
{
  "name": "projectname", // should be lowercase, uppercase will give an error
  "version-string": "0.1.0",
  "dependencies": [ // add here your dependencies you would normally install with vcpkg install [package name]
    "catch2"
  ]
}
  • 运行:vcpkg install --feature-flags=manifests,这将安装阵列中的所有依赖项。

为了删除包,只需从列表中删除依赖项并运行上述命令。


推荐阅读