赞
踩
下面我们到任意你喜欢的路径下,创建一个main文件(注意之后编译过程会产生过程文件,建议:1:不要在中文路径以及有空格或特殊字符的路径中,2:最好是在一个新文件夹里,以便清晰的查看编译过程产生的文件)。
例如:我这里使用的路径:“c:\Users[用户名]\Roaming\cangjie\helloworld”。“c:\Users[用户名]\Roaming\cangjie\”是我习惯用于保存源代码的路径。cangjie文件夹是为仓颉语言新建的文件夹,方便以后的仓颉编程都放在这里。helloworld是工程名,指代helloworld项目根目录。
习惯性的,我在helloworld文件夹下还创建了一个src文件夹,用于存放源代码。
main文件名为:main.cj(仓颉语言的源文件扩展名为*.cj),放在src路径下。完整路径:“c:\Users[用户名]\Roaming\cangjie\helloworld\src\main.cj”。内容如下:
在src路径下编译main.cj单文件。从官方资料上,我们查看编译与构建部分,cjc工具是一个单文件编译工具。编译命令行cjc main.cj,如下:
编译后在cj文件路径下生成cjo目标文件,bchir2的二进制文件,以及最后的main.exe文件。更多编译参数之后再详细介绍或参考官方文档。
运行exe文件,.\main.exe,将会看到Hello,World!输出在控制台屏幕上。
以上过程,以及中间文件我们看到:
1:最终生成的可执行文件812k,应包含了最小必须的运行时(GC等)。仓颉语言是一个具备运行时的编程语言。
2:编译过程有明显的llvm的二进制过程文件生成,仓颉借助了llvm的底层来实现其多目标平台的后续支持。
3:因此仓颉将是一个非托管编程语言,生成目标机器的机器码。与go,rust相同,在不同的操作系统与硬件平台上需要重编译,不同于.net,java等运行于虚拟机环境的中间语言能够做到一次编译到处运行。优势也在于此:不需要安装运行环境即可运行编译结果,编译结果也更加紧凑。
4:在其它一些内容中,我留意到有CJVM的配置,与CJNative并列,不确定会不会有托管版本的出现,或是为其它内容预留的。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。