Ubuntu18.04 安裝方舟編譯器及測試筆記

      網友投稿 1490 2022-05-29

      一、將方舟編譯器的源碼下載保存到需要安裝的目錄并解壓文件。

      -:https://code.opensource.huaweicloud.com/HarmonyOS/OpenArkCompiler/home

      二、環境配置

      1)、硬件推薦配置

      2 GHz 雙核處理器或者更高等級CPU

      2 GB 系統內存及以上

      200GB 可用磁盤空間

      2)、開發環境推薦

      您需要安裝一個64位版本的ubuntu18.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?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

      3)、安裝Clang編譯器并完成配置(用于編譯方舟編譯器代碼)

      1、下載clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04

      Ubuntu18.04 安裝方舟編譯器及測試筆記

      LLVM-:http://releases.llvm.org/download.html#8.0.0

      2、放置到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-18.04/bin/clang" GN_CXX_COMPILER?=?"${MAPLE_ROOT}/tools/clang_llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04/bin/clang++" GN_AR_COMPILER?=?"${MAPLE_ROOT}/tools/clang_llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04/bin/llvm-ar"

      其中${MAPLE_ROOT}為方舟編譯器源碼所放的根目錄

      4)、安裝Ninja、GN并完成配置

      1、下載Ninja(v1.9.0)及GN(Linux Version)?Ninja-:https://github.com/ninja-build/ninja/releases

      *注意此處需要下載兩個文件包:

      GN-:https://archive.softwareheritage.org/browse/content/sha1_git:2dc0d5b26caef44f467de8120b26f8aad8b878be/raw/?filename=gn

      2、將資源文件解壓放置到openarkcompiler/tools目錄下,修改解壓后的文件夾名稱問:ninja_1.9.0

      將GN可執行程序放置到openarkcompiler/tools/gn/目錄;

      將Ninja可執行程序放置到openarkcompiler/tools/ninja_1.9.0/目錄;

      打開openarkcompiler/Makefile文件,將GN和NINJA兩個變量配置為GN和Ninja可執行程序所在路徑。例如:

      GN?:=?${MAPLE_ROOT}/tools/gn/gn NINJA?:=?${MAPLE_ROOT}/tools/ninja_1.9.0/ninja

      *注意修改gn和ninja的可執行權限

      5)、源碼編譯

      在openarkcompiler目錄下執行以下命令,編譯出OpenArkCompiler,默認輸出路徑 openarkcompiler/out/bin。

      source?build/envsetup.sh make

      命令說明: source?build/envsetup.sh?初始化環境,將OpenArkCompiler工具鏈路徑openarkcompiler/src/bin設置到環境變量中 make?編譯OpenArkCompiler的Release版本 make?BUILD_TYPE=DEBUG?編譯OpenArkCompiler的Debug版本

      *注:執行命令source build/envsetup.sh之前請查看envsetup.sh是否有可執行權限,若沒有則需要添加可執行權限。

      chmod?+x?build/envsetup.sh

      經過以上操作后,系統就編譯好了maple了。

      三、開始編譯測試代碼

      要編譯成功samples 下的helloworld.java ?還需要做如下修改

      1)、修改 build/core/java2jar.mk 為如下代碼(注:修改前請先備份)

      $(APP_JAR):?%.jar?:?%.java $(JAVA2JAR)?$(APP_JAR)??$(wildcard?*.java)

      也就是將里面的

      ${MAPLE_ROOT}/libjava-core/java-core.jar

      刪除,讓它不依賴于這個輸入文件

      2)、修改 build/core/jbc2mpl.mk?為如下代碼(注:修改前請先備份)

      $(APP_MPL):?%.mpl?:?%.jar?$(JBC2MPL_BIN) $(JBC2MPL_BIN)?-injar?${MAPLE_ROOT}/libjava-core/java-core.jar?-injar?$(APP_JAR)?-out?$(APP)

      用java-core.jar 替換 libjava-core.mplt 也就是$(LIB_MPLT)

      3)、?修改out/bin/java2jar 為如下代碼

      #!/bin/bash OUTPUT=$1 CORE_ALL_JAR=$2 JAVA_FILE=$2 shift?2 javac?-g?-d?.?${JAVA_FILE} #javac?-g?-d?.?-bootclasspath?${CORE_ALL_JAR}?$@ jar?-cvf?${OUTPUT}?*.class

      4)、?修改src/bin/java2jar 為如下代碼

      #!/bin/bash OUTPUT=$1 CORE_ALL_JAR=$2 JAVA_FILE=$2 shift?2 javac?-g?-d?.?${JAVA_FILE} #javac?-g?-d?.?-bootclasspath?${CORE_ALL_JAR}?$@ jar?-cvf?${OUTPUT}?*.class

      5)、? 最后需要下載我們一直在討論的java-core.jar?庫

      -如下:https://gitee.com/mirrors/java-core

      在${MAPLE_ROOT}方舟編譯器源碼所放的根目錄下mkdir創建libjava-core目錄,并將下載的java-core.jar?庫放到此目錄下。

      6)、進入samples/helloworld目錄下

      make 就可以了,沒有報什么錯誤,并且在本目錄下生成了一些必要的文件了。

      人工智能 python 軟件開發云 AI

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:游戲背包系統,“Inventory Pro插件”,研究學習-----媽媽再也不用擔心我不會做背包了(Unity3D)
      下一篇:AIOps產品與架構淺析
      相關文章
      亚洲制服丝袜第一页| 亚洲理论片中文字幕电影| 77777亚洲午夜久久多喷| 亚洲理论精品午夜电影| 亚洲欧洲国产精品你懂的| 亚洲AV无码一区二区二三区软件| 国产精品亚洲mnbav网站| 亚洲国产精品综合久久网络| 日韩亚洲综合精品国产| 亚洲熟女精品中文字幕| 亚洲熟妇无码av另类vr影视| 亚洲中文字幕久久精品无码A| 亚洲欧洲日本在线观看| 一区二区亚洲精品精华液| 2020国产精品亚洲综合网| 亚洲成年网站在线观看| 亚洲午夜无码毛片av久久京东热| 亚洲午夜无码久久| 在线亚洲v日韩v| 亚洲国产精品视频| 亚洲精品无码专区久久久| 亚洲欧洲日产国码无码网站| 亚洲国产精品成人精品无码区在线 | 国外亚洲成AV人片在线观看 | 亚洲一级免费视频| 99久久婷婷国产综合亚洲| 亚洲综合一区国产精品| 亚洲国产精品日韩av不卡在线| 亚洲av无码偷拍在线观看| 婷婷亚洲天堂影院| 中文字幕精品亚洲无线码二区| 亚洲精品自在在线观看| 亚洲AV无码1区2区久久| 亚洲美女免费视频| 亚洲中文字幕无码中文| 一区国严二区亚洲三区| 亚洲综合精品香蕉久久网| 亚洲AV电影院在线观看| 亚洲国语在线视频手机在线| 77777亚洲午夜久久多喷| 国产亚洲午夜精品|