方舟编译器可以运行Hello World了!
方舟编译器 runtime 参考实现 pacific 发布了 0.1 版本,支持运行基于方舟编译器的 Hello World 程序。
pacific 并不是华为官方实现,而是 PLCT 实验室的培训项目。PLCT 即“程序语言与编译技术实验室”,隶属于中国科学院软件研究所智能软件研究中心。
发布公告介绍,pacific 开发团队使用 QEMU 提供 AArch64 架构支持,将方舟编译器的 Java 环境巧妙地用 GNU/Linux 的方式仿制了这套可以跑 Hello World 程序的 Toy Runtime。
据了解,pacific 是目前业内首个方舟编译器 runtime 实现,“实现了从 0 到 1 的一个跨越”。
pacific 编译与运行方法
1、目前默认在 Ubuntu 18.04 环境下编译运行;
2、依赖于 aarch64-gun-toolchain,可以通过“sudo apt-get install gcc-8-aarch64-linux-gnu”命令安装;
3、依赖于 qemu-aarch64,可以通过源码中 pacific/script/ 下的 build-qemu-aarch64.sh 编译 qemu-aarch64;
4、使用命令行“make”,编译 pacific;
5、使用命令行“make sample”,运行 Hello World 例子,成功运行后如下图所示:
此外,可以通过调整,在 Ubuntu 16.04 环境下编译运行 pacific:
1、使用命令行“sudo apt-get install gcc-aarch64-linux-gnu”,安装 aarch64-gun-toolchain 依赖;
2、将 Makefile 之中的
CROSS_AARCH64_GCC = aarch64-linux-gnu-gcc-8
修改为:
CROSS_AARCH64_GCC = aarch64-linux-gnu-gcc
3、将 src/pacific.c 中 591 行的
for (int idx = 0; idx < num; idx++) {
修改为:
int idx;
for (idx = 0; idx < num; idx++) {
4、其它步骤与 Ubuntu 18.04 环境的操作相同。
详情查看发布公告(阅读原文可查看跳转链接):
https://zhuanlan.zhihu.com/p/88143491
开源中国征稿啦!
开源中国 www.oschina.net 是目前备受关注、具有强大影响力的开源技术社区,拥有超过 400 万的开源技术精英。我们传播开源的理念,推广开源项目,为 IT 开发者提供一个发现、使用、并交流开源技术的平台。
现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿