方舟編譯器 runtime 參考實(shí)現(xiàn) pacific 發(fā)布了 0.1 版本,支持運(yùn)行基于方舟編譯器的 Hello World 程序。
pacific 并不是華為官方實(shí)現(xiàn),而是 PLCT 實(shí)驗(yàn)室的培訓(xùn)項(xiàng)目。PLCT 即“程序語(yǔ)言與編譯技術(shù)實(shí)驗(yàn)室”,隸屬于中國(guó)科學(xué)院軟件研究所智能軟件研究中心。
發(fā)布公告介紹,pacific 開(kāi)發(fā)團(tuán)隊(duì)使用 QEMU 提供 AArch64 架構(gòu)支持,將方舟編譯器的 Java 環(huán)境巧妙地用 GNU/Linux 的方式仿制了這套可以跑 Hello World 程序的 Toy Runtime。
據(jù)了解,pacific 是目前業(yè)內(nèi)首個(gè)方舟編譯器 runtime 實(shí)現(xiàn),“實(shí)現(xiàn)了從 0到 1 的一個(gè)跨越”。
pacific 編譯與運(yùn)行方法
1、目前默認(rèn)在Ubuntu 18.04 環(huán)境下編譯運(yùn)行;
2、依賴(lài)于 aarch64-gun-toolchain,可以通過(guò)“sudo apt-get install gcc-8-aarch64-linux-gnu”命令安裝;
3、依賴(lài)于 qemu-aarch64,可以通過(guò)源碼中 pacific/script/ 下的 build-qemu-aarch64.sh 編譯 qemu-aarch64;
4、使用命令行“make”,編譯 pacific;
5、使用命令行“make sample”,運(yùn)行 Hello World 例子,成功運(yùn)行后如下圖所示:
此外,可以通過(guò)調(diào)整,在Ubuntu 16.04 環(huán)境下編譯運(yùn)行 pacific:
1、使用命令行“sudo apt-get install gcc-aarch64-linux-gnu”,安裝 aarch64-gun-toolchain 依賴(lài);
2、將 Makefile 之中的
修改為:
3、將 src/pacific.c 中591 行的
修改為:
4、其它步驟與 Ubuntu 18.04 環(huán)境的操作相同。