
Conan 简要用法(包含 IDE)
写在最前
简介
Conan 是一个流行的跨平台 C++ 包管理器。它可以帮助我们在不同的操作系统和环境中管理和共享C++包,让我们更轻松、更高效地开发 C++ 应用。
本文主要介绍了 Conan 2.x 版本的简要用法以及如何在项目中使用 Conan 导入第三方库。
安装
PIP 包管理下载【非常建议👍】
关于 Conan 包管理器,这里非常值得用 Python PIP 的方式安装。你仅需执行以下命令即可:
1 | pip3 install conan |
注意:在 Windows 系统下,若要使用 pip
指令安装 Conan,请先安装 Python3!
Linux 下需要注意
对于不同的 Linux 发行版,对应的安装命令如下:
Debian/Ubuntu 系
1 | wget https://github.com/conan-io/conan/releases/download/2.15.0/conan-2.15.0-amd64.deb # 这里的 2.15.0 可以替换为其它最新的版本号 |
注意:Debian/Ubuntu 系下需要通过安装包下载的方式进行安装!
Fedora/Redhat 系
1 | sudo dnf install python3-pip -y |
注意:Redhat 7及以下版本可能使用的是 YUM 包管理器,因此需要将 dnf
替换成 yum
才可用。
Arch/Majaro 系
1 | yay -S conan |
注意:请确保你的 Arch/Majaro 系已经安装了 yay
包管理工具!
openSUSE 系
1 | zypper install python3-pip |
安装事项(引用自官方文档)
请仔细阅读:
- 请确保您的 pip 安装与 Python (>= 3.6) 版本相匹配。
- 在 Linux 上,您可能需要 sudo 权限才能全局安装 Conan。
- 我们强烈建议使用 virtualenvs(virtualenvwrapper 非常好用)来处理与 Python 有关的一切(请查看 https://virtualenvwrapper.readthedocs.io/en/stable/ 或 Windows 上的 https://pypi.org/project/virtualenvwrapper-win )。对于 Python 3,也可以使用内置模块(请查看 https://docs.python.org/3/library/venv.html )。如果不使用 virtualenv,conan 依赖项可能会与先前存在的依赖项发生冲突,尤其是当您将 Python 用于其他用途时。
- 在 macOS 上,尤其是可能有系统完整性保护的最新版本,pip 可能会失败。请尝试使用
virtualenvs
,或使用pip install --user conan
将其安装到 Python 用户的安装目录中。 - 有些 Linux 发行版(如 Linux Mint)要求在安装后重启(shell 重启,如果不够,则注销/系统),因此 Conan 会在路径中找到。
安装包下载
如果没有安装 Python,请直接通过 github.com 下载对应操作系统的安装包即可。
验证方法
如果要检查是否已经安装了 Conan,请直接执行如下命令即可:
1 | conan --help |
使用方法
必要配置
修改必要目录
以 Windows 系统为例,Windows 系统在默认情况下会将所有缓存下载及配置文件存放入 C:\Users\{你的用户名}\.conan2
。为了尽量减少 C 盘存储空间的压力,建议直接添加必要的环境变量以达到修改配置缓存目录的目的。具体操作如下:
在电脑上新建自定义目录(这里以
D:/conan
目录为例)在自己的电脑上按下 Windows+X 快捷键,按下
Y
以选择系统。在系统信息一栏中找到高级系统设置。
在弹出的窗口中按照如下图指示添加两个用户变量CONAN_HOME
和CONAN_USER_HOME
即可:保存之后,打开自己的命令行,执行如下命令,以查看是否成功修改了自定义路径。
1
conan config home
当输出为你的自定义目录即可完成修改。
生成自己的配置文件
在命令行下,执行如下命令,Conan 会自动生成一份配置文件。
1 | conan profile detect |
若已经生成了配置文件,执行如下命令即可显示当前主机的配置文件。
1 | conan profile show |
1 | ;主机配置文件 |
关于配置文件的位置,一般情况下,通过命令行即可查看配置文件所在的路径:
1 | conan profile list # 获取所有的配置文件名 |
1 | conan profile path default # default:配置文件名 |
示例:使用 Conan 导入第三方库
在自己的 C++ 项目里,如果需要使用 Conan 包管理器来实现导入第三方库,需要做以下几个步骤:
创建新的 C++ 项目
举个例子:新建一个项目(名为 MyJson
),并在项目里导入 Json
第三方库,其对应的 CMakeLists.txt
文件如下:
1 | cmake_minimum_required(VERSION 3.30) |
在 main.cpp
文件下,编辑以下内容:
1 |
|
编写 Conanfile 文件
为了添加所需要的第三方库,你需要在项目源目录下新建 conanfile.txt
文件。
1 | [requires] |
下载与安装第三方库
接下来,在自己的项目源目录下打开命令行,下载并安装需要的包。
1 | conan install . --build=missing [--output-folder=build] |
这里的 --build=missing
用于检查 Conan 是否安装第三方库,(若没有,则自动下载安装)
这里的 --output-folder
(可选参数)为输出的路径,这里默认为 build
目录。
编译项目
在命令行下执行如下:
1 | cd build |
当能正常看到以下提示时,表示构建已完成。
1 | .... |
假如出现以下报错(找不到第三方库)的情况:
1 | CMake Error at CMakeLists.txt:4 (find_package): |
建议直接将原有的 build
目录删除,并再次在项目源目录下执行以下命令以再次生成 build
目录即可。
1 | cd .. |
运行程序
完成上述构建之后,在 build
目录下执行以下命令以编译程序即可。
1 | cmake --build . --config Release |
在 Windows 系统下,如果你使用的是 MSVC 编译器,直接执行如下:
1 | ./Release/MyJson.exe |
在 Linux 系统下,执行:
1 | ./MyJson |
若能正常显示如下输出结果即可。
1 | Your host: 127.0.0.1 |
IDE 工具下使用 Conan
以目前作者的了解,对于不同的 IDE,有不同的安装与编译方式,这里讲以下几种:
Visual Studio
1. 安装插件
在菜单栏中选择 扩展 → 管理扩展,并在搜索栏中搜索 Conan,按照如下图安装即可。
当弹出以下窗口时,点击 【Modify】进行安装,在此安装期间,请关闭 IDE!
当安装已经完成后,再次打开 IDE 即可。
2. 添加第三方库
按如下图所示,在菜单栏中打开 Conan 软件包管理窗口。
再按照如下图所示,点击 【设置】图标,选择使用系统 Conan 即可。
完成设置后,打开自己的项目,在 Conan 软件包管理窗口下,搜索要安装入项目的软件包并添加项目即可。
3. 使用
关于使用,每次添加或删除,你需要在自己的项目中,
- 先执行菜单栏中的生成 → 清理解决方案。
- 再执行菜单栏中的生成 → 生成解决方案。
- 最后尝试调试你的项目即可。
注意:Visual Studio 下只支持使用 MSBuild 类型的项目,不支持使用 CMake 类型的项目。(此处别问为什么?是插件告诉我的 (/_ \) )
Jetbrain CLion
1. 安装插件
若要在 CLion 下使用 Conan,请直接下载并安装插件 Conan。具体点击 文件 → 设置 → 插件
安装插件后,请直接重启 IDE。
2. 添加所需的第三方库
按照如下图所示的操作进行:
需要注意:这里的项目必须要包含 conan_provider.cmake
文件(自动生成的文件),否则 CLion 将无法正常编译!
具体方式,即点击如下图的刷新按钮,文件会自动生成。如果没有反应,请反复重试或直接重启 IDE。
关于安装,请直接在搜索栏中搜索要安装的第三方库,并点击 【Use in Project】 即可。
补充内容
关于 conan_provider.cmake
文件,你可以通过从其它项目源目录下复制到自己的项目,也可以通过 🔗此链接 以尝试下载并复制到自己的项目,然后尝试编译运行。
3. 使用
安装完对应的第三方库, 你还需要在自己的项目里(即:CMakeLists.txt
文件)导入第三方库才能使用,具体见上文中的[示例:创建新的 C++ 项目](#创建新的 C++ 项目) 。
Qt Creator
1. 激活插件
在左边的插件,搜索 Conan 并激活,如下图所示:
2. 配置
点击你的项目,在如下图操作中添加构建步骤,选择 conan install
选项。
需要注意的是:Qt Creator 对于每一个项目,你都需要在项目源目录下单独新建一个 conanfile.txt
或 conanfile.py
文件才能正确编译。否则会提示找不到文件!
参考链接
Conan 官方文档说明如下:
- Install — conan 2.15.0 documentation
- Build a simple CMake project using Conan — conan 2.15.0 documentation
有关于 IDE 配置 Conan 的官方文档如下:
- Conan Extension for Visual Studio - Visual Studio Marketplace
- Conan plugin | CLion Documentation
- Conan Package Manager | Qt Creator Documentation
其它参考:
- 标题: Conan 简要用法(包含 IDE)
- 作者: CatIsNotFound
- 创建于 : 2025-04-12 14:02:29
- 更新于 : 2025-04-16 17:51:55
- 链接: https://catisnotfound.github.io/2025/04/Conan-Easy-2-use/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。