企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] ### conan概述 ***** 先简介一下vcpkg的功能,它使用CMake脚本定义了一系列包下载、patch、构建规则,原则上在框架内可以编写任意C++源码,最后将include/lib/dll收集起来,修改vs工程,达到引用依赖的目的。 对于一般开发(只引用现成依赖、开发上层程序),非常友好方便,只不过团队开发需要每个人都来一份,似乎都要在本地编出来二进制,才可以继续?这个有点花时间,略蛋疼一点(而conan解决了它。。) ### conan安装 ***** ``` python > 3.7 pip install conan ``` ### conan使用 ***** #### conan内置包 #### 自定义包 创建 ### 特性 ***** #### 去中心化的包管理工具 与 git 的理念类似,Conan 有本地仓库与远程仓库的概念 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IA90Nzvk-1575689298807)(https://docs.conan.io/en/latest/_images/systems.png)] Conan client:命令行工具,用于创建包和使用包,可创建本地仓库支持离线使用 Conan server:可私有化部署的服务 JFrog Artifactory:可私有化部署的仓库 JFrog Bintray:公开&公共仓库 #### 二进制管理 Conan 最主要的功能就是可以管理好预编译好的二进制文件用于后续打包。 在 Conan 中,一个包的定义: 包名/版本@用户/渠道 同一个包在不同配置下(OS / Architecture / Build Type / Compiler / Compiler Version / compiler.libcxx)构建出的文件将分别保存并支持按需获取 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Orfm1MYV-1575689298807)(https://docs.conan.io/en/latest/_images/binary_mgmt.png)] #### 跨平台 用Python写的,主流系统及研发工具均支持 ###装和配置Artifactory 我们以docker的方式拉取Artifactory镜像(这一步可能花费时间会比较久): ``` docker pull docker.bintray.io/jfrog/artifactory-cpp-ce ``` 然后安装: ``` sudo docker run -d -p 8081:8081 -p 8082:8082 --name artifactory-cpp-ce docker.bintray.io/jfrog/artifactory-cpp-ce ``` 那么我们就已经创建了一个Artifactory服务器。通过8081端口可以直接访问。默认账号密码:admin/password。 登录后我们可以跳过proxy设置,直接创建一个名为develope的conan仓库: