系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > IT快訊 > 詳細(xì)頁(yè)面

華為對(duì)外發(fā)布方舟編譯器編譯工具(附源碼下載地址)

編輯:jiayuan 2019-08-05 16:17:44 來(lái)源于:IT之家

  8月5日消息 從目前已知的爆料來(lái)看,除了可能出現(xiàn)的“鴻蒙”系統(tǒng)外,方舟編譯器也是2019華為全球開發(fā)者大會(huì)上的主角之一。而據(jù)最新消息顯示,華為官方已經(jīng)悄然放出了基于方舟編譯器的編譯工具!感興趣的朋友,還不趕緊來(lái)了解一下。

華為對(duì)外發(fā)布方舟編譯器編譯工具(附源碼下載地址)

  據(jù)悉,舟編譯器是基于GCC開發(fā)的交叉編譯器套件,它包括了C、C++、Fortran的前端,也包括了這些語(yǔ)言的庫(kù)(如libstdc++、libgcc等);HCC運(yùn)行在X86 linux架構(gòu)服務(wù)器上,生成的二進(jìn)制運(yùn)行在Aarch64架構(gòu)服務(wù)器上。

  安裝前準(zhǔn)備

  1) 環(huán)境要求

  方舟編譯器支持如下64位操作系統(tǒng)。

  SUSE12sp4及以上版本。

  ubuntu16.04及以上版本。

  其他glibc版本在2.22及以上的Linux發(fā)行版。

  2) 獲取軟件包

  安裝方舟編譯器需要獲取一些開源軟件包,具體如下:

  GCC 7.3.0(編譯器源碼包)https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz

  Binutils 2.31.1(匯編器、鏈接器等二進(jìn)制工具集源碼包)https://ftp.gnu.org/gnu/binutils/binutils-2.31.1.tar.gz

  Glibc 2.29(GNU libc庫(kù)源碼包)https://git.linaro.org/toolchain/glibc.git/snapshot/glibc-2.29.tar.gz

  Mpc 1.1.0(復(fù)數(shù)運(yùn)算庫(kù))https://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz

  GNU MPFR 4.0.2(多精度浮點(diǎn)計(jì)算庫(kù))https://www.mpfr.org/mpfr-current/mpfr-4.0.2.tar.gz

  isl 0.21(集和線性約束范圍內(nèi)整數(shù)點(diǎn)關(guān)系的操作庫(kù))https://isl.gforge.inria.fr/isl-0.21.tar.gz

  安裝HCC編譯器

  1) 操作步驟

  您可以使用HCC tar包將HCC安裝到當(dāng)前用戶權(quán)限下的任何位置,而不會(huì)影響其他編譯器的使用。

  a) 介紹操作入口,例如用XX帳號(hào)登錄XX環(huán)境。

  b) 登陸HCC下載地址下載壓縮包

  hcc_arm64le.tar.gz

  c) 將tar包拷貝至您想要安裝的目錄。

  命令腳本如下所示。

  cp hcc_arm64le.tar.gz /path/to/your/dir

  d) 解壓縮軟件包。

  命令腳本如下所示。

  tar zxvf hcc_arm64le.tar.gz

  e) 設(shè)置環(huán)境變量。

  設(shè)置環(huán)境變量命令腳本如下所示。

  export PATH=/path/to/your/dir/hcc_arm64le/bin:$PATH

  HCC編譯器提供的編譯工具在=/path/to/your/dir/hcc_arm64le/bin目錄下。

  2) 安裝后檢查

  HCC編譯器安裝完成后,可以執(zhí)行aarch64-linux-gnu-gcc -v命令查詢HCC版本。

  軟件下載

  源碼下載:點(diǎn)擊進(jìn)入

  據(jù)華為官方方面介紹,方舟編譯器是首家完全替代語(yǔ)言虛擬機(jī)的靜態(tài)編譯器,完全不需要解釋器。兼顧Java開發(fā)效率和C語(yǔ)言運(yùn)行效率的編譯器。相比現(xiàn)有的編譯機(jī)制:

  1.方舟編譯器是一種靜態(tài)的編譯方式,而現(xiàn)有的安卓系統(tǒng),運(yùn)行一個(gè)應(yīng)用程序首先啟動(dòng)虛擬機(jī),然后讀入應(yīng)用程序代碼,逐條解釋執(zhí)行。會(huì)占用較多的處理資源,影響程序執(zhí)行的效率。當(dāng)然,也有包括AOT或JIT等提前或運(yùn)行時(shí)的編譯技術(shù),把部分程序轉(zhuǎn)換成機(jī)器碼直接在CPU上執(zhí)行。但是,仍舊無(wú)法做到100%做到擺脫虛擬機(jī)的執(zhí)行,這也是當(dāng)前安卓陣營(yíng)不如IOS陣營(yíng)的關(guān)鍵。

  2.華為方舟編譯器的靜態(tài)編譯方式可將語(yǔ)言里的動(dòng)態(tài)特性直接翻譯成機(jī)器碼,手機(jī)安裝應(yīng)用程序后可全速運(yùn)行程序,徹底消除虛擬機(jī)的弊病,帶來(lái)效率上的極大提升。

  3.方舟編譯器是在開發(fā)環(huán)境部署的編譯器,而現(xiàn)有編譯過(guò)程,主要發(fā)生在手機(jī)上,帶來(lái)額外的資源消耗。

  另外,方舟編譯器針對(duì)通用ARM芯片架構(gòu)進(jìn)行編譯優(yōu)化,未來(lái)將通過(guò)軟硬件協(xié)同設(shè)計(jì),將麒麟芯片的能力發(fā)揮到極致,且方舟編譯器支持Java標(biāo)準(zhǔn)用法。也就是說(shuō),三方應(yīng)用可直接進(jìn)行編譯,不需要修改代碼!但如果希望獲得更加好的性能或內(nèi)存方面的提升,則可以通過(guò)調(diào)整代碼結(jié)構(gòu),與方舟編譯器配合優(yōu)化來(lái)實(shí)現(xiàn)。

標(biāo)簽 華為

發(fā)表評(píng)論

0

沒(méi)有更多評(píng)論了

評(píng)論就這些咯,讓大家也知道你的獨(dú)特見解

立即評(píng)論

以上留言僅代表用戶個(gè)人觀點(diǎn),不代表系統(tǒng)之家立場(chǎng)

官方交流群 軟件收錄