仓颉之编译和构建的奇妙旅程

举报
空间案例小助手 发表于 2025/08/28 10:53:30 2025/08/28
【摘要】 案例结合代码体验,帮助大家更直观的了解仓颉语言中的I/O操作。

案例概述

背景与简介

华为开发者空间面向广大开发者群体提供专属的云上成长空间,预置免费华为跟技术工具和资源,为开发者提供学习、开发到部署的全旅程支持,开发者空间提供了AI原生应用引擎、AI Notebook、云开发环境、FunctionGraph云函数、Astro低代码等核心能力,并在算力、模型、平台、应用层实现全方位优化。

仓颉编程语言是一款面向全场景智能的新一代编程语言,主打原生智能化、天生全场景、高性能、强安全。主要应用于鸿蒙原生应用及服务应用等场景中,为开发者提供良好的编程体验。

cjc是仓颉编程语言的编译命令,其提供了丰富的功能及对应的编译选项。cjc-frontend (仓颉前端编译器)会随 cjc 一起通过 Cangjie SDK 提供,cjc-frontend 能够将仓颉源码编译至仓颉的中间表示 (LLVM IR)。 cjc-frontend 仅进行仓颉代码的前端编译,虽然 cjc-frontend 和 cjc 共享部分编译选项,但编译流程会在前端编译结束时中止。使用 cjc 时仓颉编译器会自动进行前端、后端的编译以及链接工作。cjc-frontend 仅作为前端编译器的实体体现提供,除编译器开发者外,仓颉代码的编译应优先使用 cjc 。

CJPM(Cangjie Package Manager) 是仓颉语言的官方包管理工具,用来管理、维护仓颉项目的模块系统,并提供更简易统一的编译入口,支持自定义编译命令。通过包管理器自动依赖管理实现对引入的多版本三方依赖软件进行分析合并,无需开发者担心多版本依赖冲突问题,大大减轻开发者负担;同时提供基于仓颉语言原生的自定义构建机制,允许开发者在构建的不同阶段增加预处理和后处理流程,实现构建流程可灵活定制,能够满足开发者不同业务场景下的编译构建诉求。

此外, 开发者可以通过预定义或自定义的条件完成条件编译;仓颉目前支持导入和声明的条件编译。

案例优势

案例结合代码体验,帮助大家更直观的了解仓颉语言中的I/O操作。

案例流程

01.png

流程说明

1. 登录华为开发者空间,连接开发者空间云主机;

2. 使用CodeArt IDE for Cangjie创建仓颉工程;

3. 仓颉语言中编译构建的练习使用

案例实操:仓颉之编译和构建的奇妙旅程 👈👈👈体验完整版案例,点击这里。

案例最终效果

02.png


【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。