如果您使用的是搭建好編譯環境的 Ubuntu18.04 虛擬機鏡像,在網盤資料“iTOP-3568 開發板\02_iTOP-3568 開發資料匯總(不含光盤資料)\02iTOP-3568 開發板搭建好編譯環境的 Ubuntu18.04 虛擬機鏡像”目錄下,安裝 jdk 和 android 源碼依賴已經安裝好了,不必重復安裝。請根據您的電腦配置,參考本章節進行靈活配置。 1 電腦配置要求 編譯 Android 11 對機器的配置要求較高: 1. 64 位 CPU 2. 16GB 物理內存+交換內存 1)Ubuntu 確認 cpu 位數,我們輸入以下命令 getconf LONG_BIT ![]() 如上圖所示,可以發現 Ubuntu18.04 是 64 位 CPU。 2 修改物理內存 打開虛擬機,如下圖。單擊紅色框中的“虛擬機”。如下圖所示: ![]() 然后點擊“設置”彈出虛擬機的設置界面,如下圖所示: ![]() 點擊“內存”選項卡,然后設定物理內存。配置內存,需要根據用戶實際情況進行配置。下面這臺機 器中,顯示最多可以設置 32G,這里分配 16G 的內存,內存必須為 4 的倍數(編譯 Android 11 盡量多分 配內存)。如果大家的物理內存不夠,可以參考下個小節分配交換內存。 3 增加交換內存 接下來增加交換內存。配置交換內存,需要用戶根據自己的實際情況進行配置。這里舉例分配 5G 交換 內存。 在開始之前,使用命令檢查一下您的 ubuntu 的 swap 分區。 sudo swapon --show 通過以下命令創建一個用于 swap 的文件 sudo fallocate -l 5G /swapfile 注意,此時可能會顯示 fallocate:fallocate failed:Text file busy 此時,執行以下命令: sudo swapoff -a 然后再執行以下命令: sudo fallocate -l 5G /swapfile 執行以下命令為 swapfile 文件設置正確的權限: sudo chmod 600 /swapfile 使用 mkswap 實用程序在文件上設置 Linux SWAP 區域: sudo mkswap /swapfile 使用以下命令激活 swap 文件: sudo swapon /swapfile 要讓創建好的 swap 分區永久生效,可以將 swapfile 路徑內容寫入到 /etc/fstab 文件當中: ![]() sudo vim /etc/fstab 在/etc/fstab 文件最后添加如下內容: /swapfile swap swap defaults 0 0 ![]() 使用 swapon 或 free 命令驗證 SWAP 是否處于活動狀態,如下所示: sudo swapon --show sudo free -h ![]() 4 安裝 JDK 1)Android11 系統編譯依賴于 JAVA 8。編譯 Android 之前需安裝 OpenJDK。安裝命令如下: sudo apt-get install openjdk-8-jdk 執行結果,如下圖: ![]() 2)如果您之前安裝過其他版本的 JDK,需要進行版本切換。如果沒有安裝過,可以跳過此步驟,查看目前 已經安裝在系統里的 Java 版本,使用以下命令: update-java-alternatives -l ![]() 查看相應的 jdk(java javac 等)是否在 ubuntu 的 jdk 菜單里,查看切換命令 jdk 的命令,如下所示: sudo update-alternatives --config java 輸入 java8 對應的選擇項,按回車進行確認。 3) 配置 Java 環境變量,Android11 源碼里帶有 Open JDK8 的配置腳本,在 Android11 源碼根目錄下,命名為 javaenv.sh。可直接執行以下命令,配置 JDK1.8 source javaenv.sh ![]() 輸入以下命令查看 java 的版本,如果 Java 版本是 1.8 版本,接下來便可以編譯 Android11 源碼。 ![]() |