方舟编译器是一款由华为打造的开源编程工具,这款工具能对java程序直接编写。同时也能给予编程人员很多便利的操作,本次开源版能结合华为鸿蒙系统,让编程的软件速度更快,质量更高!
方舟编译器是为支持多种编程语言、多种芯片平台的联合编译、运行而设计的统一编程平台,包含编译器、工具链、运行时等关键部件。 方舟编译器还在持续演进中,陆续将上述能力实现和开源。
1、方舟编译器通过将Java语言直接变成机器码绕开虚拟机实现应用的直接编译;
2、这样用户下载应用完成后就自然得到了编译过的应用,操作非常简单哦;
3、方舟编译器提供了全新的系统及应用的编译和运行机制,从动态编译变为静态编译。
4、安卓程序编译效果更好;
5、安卓程序安装速度更快;
6、安卓程序运行速度更快;
7、系统垃圾随用随清,对手机硬件的依赖降低。
开发环境推荐
您需要安装一个64位版本的Ubuntu(推荐Ubuntu 16.04)
sudo apt-get -y install openjdk-8-jdk git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip lib32z1-dev qemu g++-multilib gcc-multilib python3-paramiko python-paramiko python-jenkins python-requests python-xlwt libglib2.0-dev libpixman-1-dev linux-libc-dev:i386
sudo apt-get -y install gcc-5-aarch64-linux-gnu g++-5-aarch64-linux-gnu
安装Clang编译器并完成配置(用于编译方舟编译器代码)
下载clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04
LLVM下载地址: http://releases.llvm.org/download.html#8.0.0
放置到openarkcompiler/tools目录,打开openarkcompiler/build/config/BUILDCONFIG.gn文件,将GN_C_COMPILER、GN_CXX_COMPILER和GN_AR_COMPILER三个变量配置为Clang编译器所在路径,例如:
GN_C_COMPILER = "${MAPLE_ROOT}/tools/clang_llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang"
GN_CXX_COMPILER = "${MAPLE_ROOT}/tools/clang_llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/clang++"
GN_AR_COMPILER = "${MAPLE_ROOT}/tools/clang_llvm-8.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/llvm-ar"
其中${MAPLE_ROOT}为openarkcompiler源码根目录。
安装Ninja、GN并完成配置
1、方舟编译器是一次性全部代码吗?
首次开源范围是编译器IR( Intermediate Representation)、RC(Reference Counting)和多语言设计思想等,用于与业界、学术界沟通交流。后续将陆续开源编译器前端、后端,支持其它语言(如 JavaScript)的编译等,当前部分Java语言特性和JVM虚拟机特性的支持未包括在本次开源代码中,包括:annotation、lambda表达式、泛型等。目前仍有很多地方不完善,会在社区陆续迭代,遇到问题请在社区提交issue,欢迎在社区继续讨论设计和代码共建。
2、方舟编译器开源路标是怎样的?
方舟编译器从2019年8月开始开源,欢迎广大的应用开发者、手机厂商、软件从业人员一起共建开源社区和生态。 开源计划大体上这样安排:2019年8月重点开源框架部分;后续将陆续开源编译器前端、后端;支持Java程序编译、JavaScript语言应用的编译等。
3、方舟编译开源面向全球开发者吗?英文网站何时上线?
方舟编译器是向全球开发者进行开源,因此,官方网站和代码托管平台均面向全球开发者开放。目前英文版网站正在紧张的开发及内测,计划将于2019年Q4 上线。
4、方舟编译器源码托管计划是怎么的?
孵化委员会期间,方舟编译器代码是托管在华为云上面。在未来走向开放治理以后,将由所挂靠机构选择的平台进行托管。如果挂靠的机构采取了X平台,我们就采用这个机构的代码托管模式进行托管。
5、方舟编译器开源使用的是什么License?
方舟编译器采用木兰License。木兰License由业界众多专家和公司集体共建,并非华为主导。
6、如何确认下载包来源可靠?MD5校验码是多少?
OpenArkCompiler-0.2-ubuntu-16.04-x86_64.tar.gz包的MD5码是:e7dc8b8c242f2d26429e2ad71dae3112
OpenArkCompiler-0.2.tar.gz 包的MD5码是:1bf859a67c8b9a2d4080bdaf25ef6181