当前位置: 首页 > 科技观察

华为方舟编译器编译工具正式发布

时间:2023-03-23 10:17:32 科技观察

2019华为全球开发者大会将于8月9日-11日在华为松山湖基地举行。本次开发者大会邀请了1500家合作伙伴和5000名全球开发者。这将是华为历史上规模最大的会议。在本次发布会上,华为方舟编译器也是关注的热点。现在,根据华为开发者联盟官网的最新消息,编译工具方舟编译器已经对外发布。据介绍,方舟编译器是基于GCC开发的交叉编译套件,包括C、C++、Fortran的前端,以及这些语言的库(如libstdc++、libgcc等)。).HCC运行在X86linux架构服务器上,生成的二进制文件运行在Aarch64架构服务器上。一、安装前准备  1)环境要求  方舟编译器支持以下64位操作系统。  SUSE12sp4及以上版本。  ubuntu16.04及以上版本。  其他具有glibc版本2.22及更高版本的Linux发行版。  2)获取软件包  安装方舟编译器需要获取如表2-1所示的开源软件包。  表2-1开源软件包名称软件包说明获取路径GCC7.3.0编译源码包https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3。0.tar.gzBinutils2.31.1汇编器、链接器等二进制工具集源码包https://ftp.gnu.org/gnu/binutils/binutils-2.31.1.tar.gzGlibc2.29GNUlibc库源码包https://ftp.gnu.org/gnu/binutils/binutils-2.31.1.tar.gz://git.linaro.org/toolchain/glibc.git/snapshot/glibc-2.29.tar.gzMpc1.1.0复数运算库https://ftp.gnu.org/gnu/mpc/mpc-1.1。0.tar.gzGNUMPFR4.0.2多精度浮点计算库https://www.mpfr.org/mpfr-current/mpfr-4.0.2.tar.gz isl0.21withinsetandlinearconstraints整数点关系操作库http://isl.gforge.inria.fr/isl-0.21.tar.gz2.安装HCC编译器  1)操作步骤  可以使用HCCtar包安装HCC到当前用户权限下的任意位置,不影响其他编译器的使用。  a)引入操作入口,如使用XX账号登录XX环境。  b)登录HCC下载地址下载压缩包  hcc_arm64le.tar.gz  c)将tar包复制到你要安装的目录下。  命令脚本如下所示。  cphcc_arm64le.tar.gz/path/to/your/dir  d)解压包。  命令脚本如下所示。  tarzxvfhcc_arm64le.tar.gz  e)设置环境变量。  设置环境变量命令脚本如下图。  exportPATH=/path/to/your/dir/hcc_arm64le/bin:$PATH  HCC编译器提供的编译工具在=/path/to/your/dir/hcc_arm64le/bin目录下。  2)安装后查看  HCC编译器安装完成后,可以执行aarch64-linux-gnu-gcc-v命令查询HCC版本。  软件下载  源码下载:立即下载  根据华为官方介绍,方舟编译器是第一款完全替代语言虚拟机的静态编译器,完全不需要解释器。一个兼顾Java开发效率和C语言运行效率的编译器。与现有的编译机制相比:  1。方舟编译器是一种静态编译方式,而在现有的Android系统中,要运行一个应用程序,首先要启动虚拟机,然后读入应用程序代码,逐条解释并执行。会占用较多的处理资源,影响程序执行的效率。当然,还有包括AOT或JIT在内的高级或运行时编译技术,将程序的一部分转换成机器码,直接在CPU上执行。但是,仍然不可能100%摆脱虚拟机的执行,这也是目前Android阵营不如IOS阵营的关键原因。  2。华为方舟编译器的静态编译方式,可以直接将语言中的动态特性翻译成机器码。手机安装应用程序后,可以全速运行程序,彻底消除虚拟机的弊端,带来极大的效率提升。  3。方舟编译器是部署在开发环境中的编译器,现有的编译过程主要发生在手机端,带来了额外的资源消耗。  方舟编译器目前针对通用ARM芯片架构进行编译优化。未来将通过软硬件协同设计,将麒麟芯片的能力发挥到极致。同时,方舟编译器支持Java标准使用,第三方应用无需修改代码即可直接编译。但是如果你想要更好的性能或者内存提升,你可以调整代码结构,使用方舟编译器进行优化。