首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CBrother升级至V2.5.5,支持编译和打包

有一年时间没更新了,主要是最近一年在忙其他事情,还有原因是拖延症发作,惭愧惭愧。本次主要更新的编译和打包功能,这个功能有开发者第一次提出来已经是1年多以前的事情了,我在QQ群里答应近期发布也是今年元月份的事情了,竟然鸽到现在才发布,抱歉抱歉。后续继续发愤图强。再来说说这个版本的功能,在做打包功能时候,我自己测试了一个50+文件的工程文件打包,发现命令行太难敲了,于是借鉴cmake的方式给CBrother提供了一个cbmod机制,用户在每一层文件夹下都写一个cbmod.txt描述一下打包信息,这样方便多了,工程大了也好管理。后续考虑在这个基础上让vscode插件支持一下工程管理,具体怎么搞,还没想清楚,需要继续琢磨下。

下面给大家介绍一下编译和打包

编译与运行

举一个编译的例子,首先我们在目录下创建main.cb文件,代码很简单,打印字符串

下面我们使用-compile命令进行编译,运行如下命令:

E:\cbrother_v2.5.5_win_amd64\cbrother.exe -compile E:\cbrotherwork\packtest\main.cb

运行完后发现脚本旁边出现了一个.cbb文件,用CBrother运行这个cbb文件

运行结果和代码一致

代码中引用cbb文件

我们在main.cb旁边创建一个tools.cb文件,写一个函数给main.cb调用,并修改main.cb代码

在main.cb中引用了tools.cb,并调用了它的函数。然后我们将tools.cb编译为tools.cbb,并删除源码文件tools.cb

之后运行main.cb

也一样调用到了方法。cbb文件除了源码不可见外,其作用与cb文件完全一致。

打包运行

这里继续沿用上面的工程,有main.cb和tools.cb两个文件,执行如下命令打包

E:\cbrother_v2.5.5_win_amd64\cbrother.exe -pack -rootpath=E:\cbrotherwork\packtest -code=main.cb;tools.cb

在目录中生成了一个packtest.cbr文件,之后我们就可以运行这个包里的类了

代码中引用cbr文件

修改main.cb文件,引用packtest.cbr中的tools类,注意一下import处代码的变化

运行main.cb,调用正常

cbr文件和文件目录的区别

为了读者能更好地理解.cbr的引用关系,这里和文件夹做一下对比

.cbr文件本质上是一个压缩包,我们可以使用解压缩软件打开它看看,里面包含的是对应的cbb文件,这种方法也可以检查自己的cbr打包到底是否正确

以下3种情况,对于CBrother的来说,完全等价

cbmod.txt文件

在工程文件过多时,使用命令打包逐个输入文件名很麻烦,可以使用cbmod方式来管理工程

file描述了当前目录里要打包的cb文件,childdir描述了要继续检索的子目录,这里都是用*,表示检索目录下所有cb文件和子目录。cbmod文件要在每个子目录都有,并描述当前子目录检索的文件和二级子目录,否则会跳过该子目录。

也可以在cbmod文件具体指明要打包的文件和文件夹

这里没有介绍-compile命令和-pack命令的用法,可以访问官网文档编译和打包这个章节,里面有详细的说明。

希望通过上面的简要说明,让各位理解编译和打包的大致情况,最后,感谢各位开发者的建议和意见,CBrother会越来越好。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/Op1XW8ay3zYJGsTCNkcmRPmg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券