克隆使用vcpkg的项目时如何安装软件包

时间:2020-08-19 20:02:50

标签: c++ git cmake vcpkg

我正在尝试使用vcpkg软件包管理器,但是我在某些问题上运行。 我有一个使用cmake和vcpkg的c ++项目,并使用vcpkg安装cache2软件包。 现在一切正常,但是一旦我推送项目并克隆它,我就找不到如何还原已安装软件包的方法。

我所做的是这样:

  • 将vcpkg安装为子模块
  • 使用vcpkg安装了cache2
  • 将cache2添加到了cmake

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

  • git clone --recurse-submodules
  • 。\ extern \ vcpkg \ bootstrap-vcpkg.bat
  • vcpkg列表

现在似乎什么也没有安装,我不希望所有人在克隆时都一一安装所有软件包。克隆时是否可以自动安装所有软件包?

1 个答案:

答案 0 :(得分:1)

我发现了使用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,这将在阵列中安装所有依赖项。

要删除软件包,只需从列表中删除依赖项并运行上述命令即可。