CLion¶
简介¶
JetBrains Marketplace 中有一个插件可用,它与高于 2022.3 版本的 CLion 兼容。 通过此插件,您可以浏览 Conan Center 中可用的 Conan 包,将它们添加到您的项目中,并直接从 CLion IDE 界面安装它们。
此插件使用 cmake-conan,它是 Conan 的 CMake 依赖项提供程序。 它使用 CMAKE_PROJECT_TOP_LEVEL_INCLUDES
定义注入 conan_provider.cmake
。 此依赖项提供程序将 CMake 配置转换为 Conan。 例如,如果您在 CLion 中选择 Debug 配置文件,Conan 将安装并使用 Debug 的软件包。
请记住,每次 CMake 调用 find_package()
时,cmake-conan 都会激活 Conan 集成。 这意味着在 CMake 配置步骤运行之前,不会安装任何库。 届时,Conan 将尝试安装所需的库并在必要时构建它们。
另请注意,依赖项提供程序是 CMake 中相对较新的功能。 因此,您需要 CMake 版本 >= 3.24 和 Conan >= 2.0.5。
安装插件¶
要安装新的 Conan CLion 插件,请导航到 JetBrains marketplace。 打开 CLion,转到 Settings > Plugins,然后选择 Marketplace 选项卡。 搜索 Conan 插件并单击“安装”按钮。
重启 CLion 后,一个新的 “Conan” 工具选项卡将出现在 IDE 的底部。
配置插件¶
在 CLion 中打开一个 CMake 项目或创建一个新项目。 然后,转到 IDE 底部的 “Conan” 工具选项卡。 插件工具栏中唯一启用的操作将是带有 “wheel”(配置)符号的操作。 单击它。
您应该做的第一件事是配置将要使用的 Conan 客户端可执行文件。 您可以指向系统上任意位置的特定安装,也可以选择“使用系统中安装的 Conan”来使用系统级安装。
多个选项标记为默认值。 让我们回顾一下它们
您将看到复选框,指示 Conan 应管理哪些配置。 在我们的例子中,由于我们只有一个 Debug 配置,因此它是唯一被选中的配置。 在此之下,“自动为所有配置添加 Conan 支持” 默认情况下处于选中状态。 这意味着您无需手动为新的构建配置添加 Conan 支持;插件将自动执行此操作。
还有一个复选框,允许 Conan 修改默认的 CLion 设置并按顺序而不是并行运行 CMake。 这是必要的,因为 Conan 2 中的 Conan 缓存尚不支持并发。
如果您正在使用 Conan 插件,通常不会取消选中这些选项。 设置您的首选项后,单击“确定”按钮以完成配置。
注意: 此时,CLion 将自动运行 CMake 的配置步骤。 由于插件设置了 conan.cmake 依赖项提供程序,因此 CMake 输出中将出现警告。 此警告表明我们尚未向 CMakeLists.txt 添加 find_package()。 一旦我们将必要的 find_package() 调用添加到 CMakeLists.txt 文件中,此警告将消失。
完成初始配置后,您会注意到库列表已启用。“更新”和“检查”按钮也处于活动状态。 我们稍后将详细解释这些内容。
使用插件¶
配置插件后,您可以浏览可用的库并从 CLion 安装它们。 例如,如果您想使用 libcurl 从 Internet 下载图像,请导航到库列表并搜索 libcurl。 将显示有关如何将其添加到 CMake 的信息,以及 “在项目中使用” 按钮。 选择您想要的版本并单击该按钮。
如果您单击 “眼睛”(检查)图标,您将看到添加到项目中的所有库(假设您添加了多个库)。 此视图包括 CMake 的基本目标信息以及将它们集成到 CMake 中所需的代码片段。
Conan 将有关已使用软件包的信息存储在项目文件夹中的 conandata.yml 文件中。 此文件由 conanfile.py 读取,conanfile.py 也是在此过程中创建的。 您可以自定义这些文件以进行高级插件使用,但请确保您阅读相应文件中的信息以正确执行此操作。 根据说明修改您的 CMakeLists.txt,它应该看起来像这样
cmake_minimum_required(VERSION 3.15) project(project_name) set(CMAKE_CXX_STANDARD 17)
find_package(CURL) add_executable(project_name main.cpp)
target_link_libraries(project_name CURL::libcurl)
重新加载 CMake 项目后,您应该在 CMake 输出选项卡中看到 Conan 正在安装库。
另请参阅
有关更多详细信息,请查看 Conan 博客中关于该插件的条目。