尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

《仓颉语言实战》仓颉编译器cjc详解:常用编译选项与条件编译速查表

发布时间:2026/9/24 17:10:19

资讯中心
01
ARTICLE

《仓颉语言实战》仓颉编译器cjc详解:常用编译选项与条件编译速查表

《仓颉语言实战》仓颉编译器cjc详解:常用编译选项与条件编译速查表
《仓颉语言实战》仓颉编译器cjc详解常用编译选项与条件编译速查表【免费下载链接】仓颉语言实战-张磊仓颉语言实战由张磊编写清华大学出版社出版。 该书践行“零基础入门仓颉语言”的理念具有内容通俗易懂知识点循序渐进的特点可以帮助读者快速掌握仓颉编程语言。项目地址: https://gitcode.com/Cangjie-SIG/cangjieyuyanshizhan-ZL《仓颉语言实战》张磊 著清华大学出版社配套源码仓库中第26章完整演示了仓颉编译器 cjc的常用编译选项与条件编译写法。本文以速查表形式整理 cjc 编译命令、核心参数、When条件编译宏与单元测试编译方法帮助新手快速上手仓颉语言的编译与构建流程无需逐字通读也能查表即用。一、cjc 是什么一分钟理解仓颉编译器cjc 是仓颉语言自带的官方编译器命令负责把.cj源文件编译、链接为可执行程序。其基本用法如下cjc compile main.cj执行后会在当前目录生成与入口函数同名的可执行文件如main。你可以通过cjc compile --help查看全部选项下面这张表汇总了日常开发最常用的参数。二、cjc 常用编译选项速查表 选项作用典型场景compile编译子命令后接.cj文件日常编译的固定入口-target 平台指定目标平台如x86_64-unknown-linux交叉编译到不同系统-opt 0~3设置优化等级数字越大优化越深发布版用高级优化-I 路径添加源文件搜索路径多目录工程管理-l 库名链接外部 C 库调用系统 C 接口--lib-path 路径指定链接库搜索路径第三方库位置不在默认目录--import 包编译时导入第三方包使用社区仓颉包--export 包将源文件导出为包把模块发布为可复用包--emit 格式指定产物类型可执行文件/动态库/目标文件编译成.so动态库-D 宏值定义编译期宏供When使用条件编译的开关来源--test以单元测试模式运行编译产物跑TestCase用例--testcase 用例只运行指定测试用例快速验证单个用例--print-cangjie-ir打印仓颉中间表示学习编译器原理--print-llvm-ir打印 LLVM IR深入底层代码生成--version/--help查看版本 / 帮助信息环境自检 新手记忆法日常只需记住compile、-opt、-D、--test、--import/--export五组其余按需查表即可。三、条件编译用 When 让代码按环境生效条件编译是 cjc 编译选项的高阶玩法通过When[条件]标注代码块再配合-D选项传入宏值让同一段源码在不同平台或配置下编译出不同行为。1. 按操作系统分支见 condition_compile.cj// When[os linux] // func print() { println(linux) }2. 按自定义宏分支见 user_defined_condition_compile.cj编译时加上-D dbmysql即可让When[dbmysql]标注的函数参与编译。3. 多条件组合见 multi_condition_compile.cj使用连接多个条件例如When[dbmysqloslinux]实现数据库 操作系统双重定向编译适合按部署环境裁剪功能。⚠️ 注意书中示例已全面适配仓颉 1.0.0当前版本暂不支持when关键字相关写法在示例中以注释形式保留升级后可直接放开使用。四、编译即测试用 --test 跑单元测试把--test加入编译命令cjc 会执行源码中的TestCase用例。配套示例 test_demo.cj 基于std.unittest框架定义测试类编译运行后即可在终端看到用例输出无需额外测试工具。五、包编译实战--export 与 --import 配合书中 log/printer.cj 演示了将日志模块导出为包log再由 cjc_demo.cj 通过import log.printLog导入使用同目录的 loga/printer.cj 则展示了同一功能的另一种时间格式化写法方便对比学习。编译时通过--export log指定包名即可让其他文件引用。六、获取完整示例代码配套仓库包含全书 27 章示例可直接克隆使用git clone https://gitcode.com/Cangjie-SIG/cangjieyuyanshizhan-ZL编译选项与条件编译的完整示例集中在 code/Chapter26/ 目录调试相关的cjdbg命令则可在 code/Chapter27/ 中继续学习。小结cjc compile是仓颉开发的起点——用-opt调优化、用-DWhen做条件编译、用--test跑测试、用--export/--import组织包。掌握这张速查表再配合《仓颉语言实战》第26章的逐行示例即可独立完成从编写到发布的完整编译流程。【免费下载链接】仓颉语言实战-张磊仓颉语言实战由张磊编写清华大学出版社出版。 该书践行“零基础入门仓颉语言”的理念具有内容通俗易懂知识点循序渐进的特点可以帮助读者快速掌握仓颉编程语言。项目地址: https://gitcode.com/Cangjie-SIG/cangjieyuyanshizhan-ZL创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。