Conan 包管理 package manager

Conan 安装

  • pip install conan: 详见;
    安装完成后:conan --version
    Conan version 1.51.0
  • 配置文件见 ~/.conan/ 目录下文件

Conan 入门

  • git clone https://github.com/conan-io/examples.git && cd examples/libraries/poco/md5 这个例子写的很棒,很好理解。
build
build.bat
build.sh
CMakeLists.txt
conanfile.txt
md5.cpp
README.md

执行 ./build.sh 即可编译出 md5。

$ cat ./build.sh 
#!/bin/bash
set -e
set -x
rm -rf build
mkdir build
pushd build
conan install .. --build=missing
cmake .. -DCMAKE_BUILD_TYPE=Release
cmake --build .
bin/md5
  • 通过命令 conan search poco --remote=conancenter 查询 poco 库
  • conan inspect poco/1.9.4 检阅 poco 库的 1.9.4 版本。
  • 通过命令 conan info . 可以通过当前工程的 conanfile.txt 文件,检阅当前工程的所有各层依赖,包括 poco 所依赖的那些库,及其各级传递依赖(transitively required)。
$ cat conanfile.txt 
[requires]
poco/1.9.4

[generators]
cmake
conan info .
  • 私有库 private packages,下载 社区版 JFrog Artifactory。

Conan Documentation

  • Conan github:The open-source C/C++ package manager。
  • 方便和 CMake 工程集成,示例。支持公共库、私有库、Fork 公共库。
  • 目前 recipes 已有 1346 种,pcre、libcurl、libpcap、mbedtls 都已在公共库中。可在 页面 查询,也可命令 conan search poco --remote=conancenter 查询。
  • conanfile.txt:
    conanfile.txt

包管理 package manager

  • Conan: The open-source C/C++ package manager。
  • The Meson Build System;
  • CPM.cmake:CMake's missing package manager.
  • cpp-pm/hunter: CMake driven cross-platform package manager for C/C++.
  • vcpkg 微软。g++ >= 6 不适合。
  • reddit: Best way to manage dependencies with c++?
  • How to properly manage dependencies for C/C++ project?

你可能感兴趣的:(Conan 包管理 package manager)