conan create与conan install命令的区别及适用场景解析
Conan create 与 Conan install 的核心区别及适用场景
本质差异
conan create 是打包+安装的一站式操作:它会先把你本地的包配方(conanfile.py/conanfile.txt)编译、打包成标准的 Conan 包,存入本地缓存(或推送到远程仓库),再完成包的安装和构建环境配置。
conan install 则是单纯的依赖安装与环境配置操作:它只会从本地缓存或远程仓库拉取已存在的 Conan 包,生成项目所需的构建配置文件(比如 CMake 工具链、Makefile 等),不会处理本地配方的打包流程。
具体区别
- 操作对象不同
conan create针对未打包的本地包配方,目标是把你的代码/配方转化为可复用的 Conan 包conan install针对已存在的 Conan 包(第三方仓库的或你之前用create生成的),只做安装和环境适配
- 执行流程不同
conan create走完整的包生命周期:源码编译(若为源码包)→ 打包 → 存入缓存 → 安装配置conan install跳过打包构建环节,直接拉取现成包并生成项目构建环境
- 输出结果不同
conan create会在本地缓存新增一个可复用的包版本,后续可反复用install调用conan install仅生成项目的构建配置文件,不会在缓存中新增包
适用场景
用 conan create 的场景
- 你开发了自定义库/工具,想打包成 Conan 包,方便在多个项目中复用
- 修改了本地包配方后,需要重新构建并更新缓存中的包版本
- 测试自己的包配方是否能正确构建为可安装的 Conan 包
用 conan install 的场景
- 项目需要引入第三方依赖(如 Boost、OpenCV 等已在 Conan 仓库中的包)
- 已用
conan create生成了自定义包,现在要在其他项目中安装使用该包 - 仅需生成项目的构建环境配置,无需打包新的包
内容的提问来源于stack exchange,提问作者steep
相关产品推荐
相关产品推荐

