在Linux上初探仓颉编程语言:从安装到第一个程序
本文记录了在Linux环境下安装和使用仓颉编程语言的完整实践过程。作者基于Ubuntu 18.04系统,详细介绍了仓颉工具链的安装步骤、环境配置及依赖处理,并编写了首个"Hello World"程序进行验证。文章重点突出了仓颉语言的特性优势,包括多后端支持、多范式编程、安全性设计以及丰富的内置库等。体验表明仓颉在Linux平台具有良好的兼容性和易用性,其现代化设计理念和高效工具链给开发者带来便捷的
最近我尝试了一门新的编程语言——仓颉(Cangjie),它是一种面向全场景应用开发的通用编程语言,兼顾了开发效率和运行性能。作为一名Linux开发者,我对新语言的探索总是充满兴趣,今天就和大家分享一下我在Linux环境下安装仓颉工具链并运行第一个仓颉程序的实践经验。
为什么选择仓颉语言?
在正式开始之前,先简单聊聊我为什么对仓颉感兴趣。仓颉语言有几个非常吸引我的特点:
- 多后端支持:仓颉支持CJNative和CJVM两种后端,CJNative可以直接编译为原生二进制代码,性能更高;CJVM则编译为字节码,跨平台性更好。
- 多范式编程:仓颉融合了函数式、命令式和面向对象编程范式,开发者可以根据场景自由选择。
- 类型安全与内存安全:静态强类型语言,编译时类型检查,自动内存管理,运行时数组越界检查,安全性高。
- 高效并发:内置用户态轻量线程(协程),并发编程简单高效。
- 生态兼容性强:支持与C语言互操作,便于复用现有生态。
- 丰富的内置库:数据结构、算法、网络通信、文件操作、序列化、加解密等功能一应俱全。
这些特性让我觉得仓颉语言非常适合在Linux环境下进行系统级开发和应用开发。
Linux环境准备
我使用的是Ubuntu 18.04(x86_64架构),根据官方文档,仓颉工具链对Linux环境的要求如下:
| 架构 | 环境要求 |
|---|---|
| x86_64 | glibc 2.22,Linux Kernel 4.12或更高版本,libstdc++ 6.0.24或更高版本 |
| aarch64 | glibc 2.27,Linux Kernel 4.15或更高版本,libstdc++ 6.0.24或更高版本 |
在Ubuntu 18.04上,还需要安装一些额外的依赖:
sudo apt-get install binutils libc-dev libc++-dev libgcc-7-dev
此外,仓颉工具链还依赖OpenSSL 3组件,这个组件可能无法直接从默认软件源安装,需要手动安装(具体安装方法可参考官方附录)。
安装仓颉工具链
首先,从仓颉官网上下载适合自己平台的安装包,比如我使用的是x86_64架构的Linux系统,就下载:
Cangjie-x.y.z-linux_x64.tar.gz
下载完成后,解压安装包:
tar xvf Cangjie-x.y.z-linux_x64.tar.gz
解压后会得到一个名为cangjie的目录,进入该目录并执行环境配置脚本:
source cangjie/envsetup.sh
执行完毕后,验证一下安装是否成功:
cjc -v
如果看到类似下面的输出,说明安装成功:
Cangjie Compiler version x.y.z
注意:envsetup.sh脚本只在当前shell环境中生效,如果希望每次打开终端都能直接使用仓颉工具链,可以在~/.bashrc或~/.zshrc文件末尾添加:
# 假设仓颉安装在/home/user/cangjie
source /home/user/cangjie/envsetup.sh
编写并运行第一个仓颉程序
环境准备好了,接下来我们写一个简单的仓颉程序,感受一下仓颉语言的魅力。
新建一个文件hello.cj,内容如下:
// hello.cj
main() {
println("你好,仓颉")
}
仓颉语言的注释语法和C/C++类似,单行注释用//,多行注释用/* */。
然后使用仓颉编译器cjc编译程序:
cjc hello.cj -o hello
编译成功后,会生成一个名为hello的可执行文件,运行它:
./hello
你会看到输出:
你好,仓颉
是不是很简单?从安装到运行第一个程序,整个过程非常顺畅,仓颉语言的工具链设计得很友好,基本上是开箱即用。
卸载与更新仓颉工具链
如果你想卸载仓颉工具链,只需要删除安装目录即可:
rm -rf /path/to/cangjie
同时,记得移除之前在.bashrc或.zshrc中添加的环境变量配置。
如果需要更新仓颉工具链,先卸载旧版本,再按照上述步骤安装新版本即可。
总结与感受
通过这次实践,我对仓颉语言有了初步的了解。仓颉语言的设计非常现代化,语法简洁高效,类型安全和内存安全的特性让我在编写代码时更加放心。多范式编程的支持也让我在不同场景下有更多选择。
仓颉工具链在Linux上的安装和使用体验也非常不错,官方提供了详细的安装指导和环境配置脚本,基本上没有遇到什么坑点。
后续我会继续深入探索仓颉语言的高级特性,比如并发编程、元编程、与C语言的互操作等,期待能在实际项目中发挥仓颉语言的优势。
希望这篇文章能帮助你快速上手仓颉语言,欢迎大家一起交流学习!
更多推荐



所有评论(0)