查看原文
其他

方舟编译器可以运行Hello World了!

oschina 开源中国 2020-09-02

方舟编译器 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 开发者提供一个发现、使用、并交流开源技术的平台。


现在我们开始对外征稿啦!如果你有优秀的技术文章想要分享,热点的行业资讯需要报道等等,欢迎联系开源中国进行投稿。投稿详情及联系方式请参见:我要投稿

推荐阅读

InfoWorld公布2019年最佳开源软件

微软不再把.NET Framework API移植到.NET Core 3.0

三星宣布结束Linux on DeX项目

谷歌可能在与小米、索尼等公司合作开发Fuchsia OS

人类世界至暗时期的开源操作系统

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存