在WSL2中使用docker編譯安卓原始碼

2021-10-05 03:15:58 字數 1713 閱讀 2772

在wsl2(ubuntu 18.04)中安裝docker並配置自啟動

重啟docker

sudo service docker restart
編譯安卓5.0到6.0,則轉殖android-5分支

git clone  -b android-5
7.0及以上直接轉殖即可

git clone
預設儲存到~/aosp-root(即/root/aosp-root)

export aosp_vol=~/android/
也可修改aosp中的aosp_vol

以編譯6.0系統為例,修改aosp的第十二行為:

aosp_image=$
所有tag:dockerhub kylemanna/aosp tags

用於測試資料夾對映是否正確,進入後執行ls

./aosp
注意:不要執行exit,會關閉容器。使用ctrl+p+q從容器中detach即可

用於編譯系統

使用vscode docker外掛程式(推薦)

vscode中安裝docker外掛程式後,在containers中右鍵開啟的aosp容器,attach shell

使用命令列

查詢容器id

啟動docker容器後,複製容器id(使用者名稱後面的字元)

也可以使用docker ps查詢

(下面是使用命令提取出第乙個容器id)

登入bash

cid=$(docker ps | grep aosp | cut -d" " -f1) && echo $cid

docker exec --privileged -u root -it $cid bash

進入容器的bash後,開啟原始碼目錄,執行以下命令:

prebuilts/misc/linux-x86/ccache/ccache -m 100g

source build/envsetup.sh

lunch aosp_arm-eng

cpus=$(grep ^processor /proc/cpuinfo | wc -l)

make -j $[2*$cpus]

注意

並修改指令碼中的aosp_arm-engaosp_hammerhead-userdebug

cd tests

bash ./build-aosp.sh

docker ps找到容器id,執行docker rm -f 容器id刪除

tiann/docker-aosp

使用docker建立aosp編譯環境

docker退出容器不關閉容器的方法

WSL 2 使用說明

cpu啟動虛擬機器平台 在bios中設定 管理員許可權下設定 enable windowsoptionalfeature online featurename virtualmachineplatform enable windowsoptionalfeature online featurenam...

wsl2安裝與除錯到docker

如果不想建立使用者,直接在設定使用者時關掉重新開啟就會以root使用者執行 檢視版本 wslconfig l 適用於 linux 的 windows 子系統分發版 ubuntu 20.04 預設 解除安裝指定版本 wslconfig u ubuntu 20.04mv etc apt sources....

如何使用WSL2在Windows上執行Podman

想在windows 10上執行podman嗎?您可以,感謝最新的windows子系統linux wsl 2.0實現。借助最新的 windows 子系統 for linux wsl 2.0 實現,podman 現在可以開箱即用。對配置檔案的微小更改使 podman 更易於使用。在接下來的部分中,我將記...