Visual Studio¶
Visual Studio 的 Recipe 工具¶
Conan 提供了多种工具来帮助管理使用 Microsoft Visual Studio 的项目。这些工具可以从 conan.tools.microsoft
导入,并允许与 Microsoft Visual Studio 原生集成,而无需使用 CMake,而是直接使用 Visual Studio 解决方案、项目和属性文件。最相关的工具包括
MSBuildDeps:Microsoft MSBuild 构建系统的依赖信息生成器。它将生成多个
xxxx.props
属性文件,每个文件对应一个包的依赖项,供使用 MSBuild 或 Visual Studio 的使用者使用,只需将生成的属性文件添加到解决方案和项目中即可。MSBuildToolchain:MSBuild 的工具链生成器。它将生成可以添加到 Visual Studio 解决方案项目的 MSBuild 属性文件。此生成器将当前的包配置、设置和选项转换为 MSBuild 属性文件语法。
MSBuild 构建助手是 MSBuild 命令行调用的包装器。它将诸如
msbuild "MyProject.sln" /p:Configuration=<conf> /p:Platform=<platform>
的调用抽象为 Python 方法调用。
有关 conan.tools.microsoft
下工具的完整列表,请查看参考部分。
Visual Studio 的 Conan 扩展¶
VisualStudio Marketplace 中提供了一个扩展 ,它与 Visual Studio 2022 版本及更高版本兼容。通过此扩展,您可以浏览 Conan Center 中可用的 Conan 包,将它们添加到您的项目中,并且它们将在构建项目之前自动安装。
注意
Visual Studio 扩展仅与基于 MSBuild 的 C/C++ 项目兼容。它不适用于基于 CMake 的项目或使用其他技术的项目。对于基于 CMake 的项目,请参考 cmake-conan 依赖项提供程序。
安装¶
Conan Visual Studio 扩展可以直接从 Visual Studio 内部安装
打开“扩展”菜单。
选择“管理扩展”。
在在线市场中搜索“Conan”。
下载并安装扩展。
或者,您可以从我们的 发布页面 下载最新版本并手动安装。
初始配置¶
安装 Conan 扩展后,您可以从 Visual Studio 中的“Conan”工具窗口访问它。为此,请转到**视图 > 其他窗口 > Conan C/C++ 包管理器**。

最初,您需要配置扩展要使用的 Conan 可执行文件。通过单击扩展窗口中的配置按钮(齿轮图标),您可以设置 Conan 客户端可执行文件的路径。您可以指定自定义路径,也可以选择使用系统级别安装的 Conan 客户端。

配置 Conan 客户端后,扩展即可使用,您可以开始向项目中添加库。
搜索和添加库¶
配置完成后,Conan 工具窗口中的库列表将变为活动状态,您可以使用搜索栏搜索 Conan 包。选择一个库将允许您查看其详细信息,包括可用版本和集成选项。

如果您现在单击“添加需求”按钮,扩展程序将向您的项目添加一个 conanfile.py 和一个 conandata.yml,其中包含安装所选 Conan 包的必要信息。它还将向项目添加一个预构建事件,以便在下次编译项目时安装这些库。
在任何时候,您也可以使用刷新按钮(圆形箭头图标)来更新 Conan Center 中可用的包列表。
现在,如果您启动项目的构建过程,预构建事件将触发 Conan 安装包并将必要的属性注入到项目中,从而使 Visual Studio 能够编译并链接到这些库。

警告
如果 Visual Studio 没有足够的时间来处理注入的属性,则初始编译可能会失败。如果发生这种情况,只需重新构建项目,它应该会成功构建。
有关 Conan Visual Studio 扩展的更深入介绍以及实际示例,请查看 Conan 博客中的这篇示例。
另请参阅
MSBuildDeps、MSBuildToolchain 和 MSBuild 的参考文档。