Conan让C++项目组件化

随着项目越来越大,很多基础的功能模块需要被拆解出来,单独管理。一方面一些基础模块很稳定,不需要再花团队精力去维护,另一方面有些模块可以供其他项目复用,所以组件化势在必行。

  • 项目拆解。将基础模块拆解出来,例如底层网络,bugreport等等稳定,可复用的模块拆解出来。为这些单独模块创建git仓库,单独管理。
  • 为各个项目编写conan脚本,用于在组件代码升级后,自动编译、打包和上传。这些功能conan都已经覆盖。
  • 自动化组件管理。

前面两步参考之前的conan环境搭建和使用介绍,按部就班就可以,第三部自动化管理。代码提交后自动触发或者手动执行,组件更新发布脚本,脚本需要参数:组件名、版本号、git地址。脚本完成以下事项:

  • 根据git下载对应组件代码
  • 调用组件工程中的conan脚本,传入组件名称和版本号打包(conan create . name/version@user/channel)
  • 上传组件到仓库 (conan upload name.version@user/channel -r=server)
  • 更新管理平台

使用组件的项目编写conan依赖配置conan.txt,具体可以参考conan使用,因为conan可以根据配置中的generator生成对应VS或者CMake的依赖文件,基本上是完全自动化的过程。在编译前执行一次conan install .  generator如果是VS就会生成conanbuildinfo.props文件,可以手动将属性文件添加到对应的工程中(参考考:

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值