工具介绍
Conan是一个针对C++的包管理工具,与CMake有非常好的结合。JFrog Artifactory是Conan的私有包中心,用于公司内部私有化部署。
工具下载
预期安装平台Windows。
JFrog Artifactory:https://conan.io/downloads.html
Conan:https://conan.io/downloads.html
安装
Conan下载后为直接可用的安装包。JFrog Artifactory下载后为绿色压缩包,解压后直接使用。
使用
JFrog Artifactory
本测试下载版本为7.17.9。可执行文件路径为:
*\jfrog-artifactory-cpp-ce-7.17.9-windows\artifactory-cpp-ce-7.17.9\app\bin
执行artifactory.bat进行程序启动。正常启动后,通过网页对其进行访问,链接地址为:
http://localhost:8081
页面登录时,默认的用户名、密码为:
用户名: admin
密码: password
Conan
主要学习两个功能,使用包与创建包。在具体进行使用包、创建包之前,需要对其进行配置,确保能够与本地包中心进行连通。
与私有包中心连通
Conan支持与多个包中心连接,每一个包中心有一个名字与一个URL。
当前包中心连接列表查询:
conan remote list
添加新的私有包中心,此操作的前置条件是在私有包中心(JFrog Artifactory)中创建了该仓库,本例假设添加了新的仓库test_local:
conan remote add localt http://127.0.0.1:8081/artifactory/api/conan/test_local
关于如何创建仓库,参考链接说明中Creating and Using a Conan Repo章节:
https://docs.conan.io/en/latest/uploading_packages/artifactory/artifactory_ce.html
再次查询包中心连接列表,确认添加成功。
conan remote list
创建包
mkdir mypkg && cd mypkg
conan new test1/0.1 -t
conan create .
conan upload test1/0.1 -r=localt
分别对语句进行说明:
mkdir mypkg && cd mypkg
conan new test1/0.1 -t
创建一个新包模板。构建初步的描述信息,使用者基于生成信息进行详细细节修改。
conan create .
在本地文件系统中进行包构建。
conan upload test1/0.1 -r=localt
构建成功后的包上传。
使用包
步骤1
在创建包过程中生成有test_package,拷贝其中CMakeLists.txt与example.cpp两个文件到新的目录test2。在test2目录中,创建包依赖说明文件conanfile.txt,内容为:
[requires]
test1/0.1
[generators]
cmake
步骤2
在test2目录中,执行以下命令:
mkdir build
cd build
conan install ..
cmake -G "MinGW Makefiles" ..
mingw32-make