wsl2是適用於 Linux 的 Windows 子系統可讓開發人員按原樣運行 GNU/Linux 環境 - 包括大多數命令行工具、實用工具和應用程序 - 且不會產生傳統虛擬機或雙啟動設置開銷
wsl2 安裝
詳細安裝過程見官方說明文檔,對win10 有版本要求:
運行 Windows 10(已更新到版本 2004 或更高版本,對於 ARM64 系統則是內部版本 19041)
具體安裝過程參考:wsl2的安裝說明
安裝Linux系統,打開 Microsoft Store,並選擇你偏好的 Linux 分發版。我選擇的Ubuntu 18.0.4
環境准備
安裝Vscode 安裝vscode插件Remote WSL
這樣編輯wsl里的文件時只需要 code ~/.bashrc
即可
給wsl安裝軟件
sudo apt-get update
sudo apt install repo
sudo apt install python
android 源代碼下載編譯
2.1 源代碼下載
打開一個Linux窗口,執行如下命令:
注意 如果path里面的環境變量有空格 會出現錯誤導致無法繼續執行腳本,解決辦法就是編輯~/.bashrc文件 刪掉path中的空格
初始化repo環境
mkdir ~/bin
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
chmod +x repo
cp repo ~/bin
echo "PATH=~/bin:$PATH" >> ~/.bashrc
echo "export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'" >> .bashrc
source ~/.bashrc
# 下載代碼,由於安裝好的Ubuntu系統python版本是3.x,repo依賴2.x,所以需要先安裝2.x版本的python
# 下載指定版本 https://source.android.com/setup/start/build-numbers#source-code-tags-and-builds
sudo apt install python
repo init -u https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/platform/manifest -b android-10.0.0_r36
repo sync -c
如果下載斷斷續續,可以使用腳本來重復執行repo sync
echo "======start repo sync======"
repo sync -c
# 執行成功$?會返回0,失敗返回非0
while [ $? -ne 0 ]
do
echo "======sync failed, re-sync again======"
repo sync -c
done
2.2 源代碼編譯
執行如下命令:
// 配置java jdk,另外一種選擇是直接配置環境變量,因為源代碼里面已經有現成的jdk版本,
// 路徑prebuilts\jdk\jdk8\linux-x86\bin
sudo apt-get update
sudo apt-get install openjdk-8-jdk
sudo update-alternative --config java
安裝依賴工具鏈
sudo apt-get install libgl1-mesa-dev g++-multilib flex bison gperf build-essential tofrodos python-markdown libxml2-utils xsltproc dpkg-dev libsdl1.2-dev git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 x11proto-core-dev libx11-dev libgl1-mesa-dev libxml2-utils xsltproc unzip m4 ccache
進入源代碼根目錄,編譯
source build/envsetup.sh
lunch 18
make updatepackage -j8
感謝
https://www.jianshu.com/p/c3bf48ac4418
https://blog.csdn.net/dangelzjj/article/details/109267308