1. 程式人生 > >如何在本機編譯android8.0環境,適用於Ubuntu16.04

如何在本機編譯android8.0環境,適用於Ubuntu16.04

1.安裝openjdk
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk

2.安裝vim編輯器
sudo apt-get install vim

3.配置環境變數
sudo vim /etc/profile
在該檔案最下方加入如下程式碼:
  JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
  PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
  export JAVA_HOME  
  export PATH
儲存退出

4.安裝編譯所需要的工具
sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386  libgl1-mesa-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386 dpkg-dev

5.配置必要的編譯資訊
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
sudo apt-get install ccache
source ~/.bashrc

6.安裝git
sudo apt-get install git
git config --global  user.email "your email"
git config --global  user.name "your name"

7.安裝curl和repo用於同步
mkdir ~/bin
PATH=~/bin:$PATH
sudo apt install curl
curl http://192.168.0.185/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

8.建立目錄
mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY

9.同步程式碼
repo init -u git://192.168.0.185/android-x86/manifest.git -b multiwindow-oreo
repo sync --no-tags --no-clone-bundle --no-repo-verify

10.建立multiwindow-oreo開發分支:
repo start multiwindow-oreo --all

11.編譯
source build/envsetup.sh
lunch openthos_emu_x86_64-eng

m -j4

編譯過程中有可能會報錯,使用多執行緒編譯報錯後,可以改用單執行緒繼續編譯,方便檢視報錯的地方,改正後重新多執行緒編譯

使用筆記本進行本地編譯的時候有可能會出現Out of memory error

解決辦法:

export JACK_SERVER_VM_ARGUMENTS="-Dfile.encoding=UTF-8 -XX:+TieredCompilation -Xmx4g"

./prebuilts/sdk/tools/jack-admin kill-server
./prebuilts/sdk/tools/jack-admin start-server

然後繼續編譯即可

12.下載模擬器:http://192.168.0.180/dl/sdk/emulator_oreo.tar.gz
解壓emulator_oreo.tar.gz,將新編譯生成的out/target/product/emu_x86_64/system-qemu.img和out/target/product/emu_x86_64/system/build.prop替換當前位置對應的檔案。

13.執行模擬器
./run_emulator.sh

如果提示需要密碼,需要cd 到emu_8.0/out/target/product/emu_x86_64/下,rm *.qcow2清除配置

轉自http://blog.csdn.net/potatomagic/article/details/52933693