Android 編譯
Android屬崁入式系統, 需於Ubuntu系統進行cross compile的工作. 編譯時, 需使用大量的cpu及Ram資源. Ram一般要求要到8G以上. 雖說在Windows上使用VMware也可以編譯, 但編譯時間可能會長達3~4小時. 故建議在純Ubuntu系統中, 且CPU使用i7 8核來編譯, 編譯時間可縮短到1.5hrs.
Android原始碼高達10G以上, 再加上編譯時期的暫存檔, repo, git檔, 建議硬碟空間至少要有100G的空間
Ubuntu版本
目前測試最高可用版本為14.04. 結尾的04版為LTS(Long Time Support), 結尾為10版盡量不要使用。15.04, 16.04皆不適用於編譯Android系統
Jdk 版本
編譯Android系統, 僅可使用 jdk 6.0的版本, 7及8皆不適用。但若是開發Android App, 需使用最新的版本才會正常. 故建議編譯系統時, 使用Ubuntu+jdk6.0. 開發App則於Windows+jdk8.0
cd /usr/local
sudo ~/jdk-6u45-linux-x64.bin
然後於/etc/profile加入如下路徑設定
export PATH=/usr/local/jdk1.6.0_45/bin:$PATH
adb 設定
adb 存於sdk/platform-tools中,需於 https://developer.android.com/ 下載, 然後會存於~/Android/Sdk/platform-tools之下. 因為開發App盡可能在Windows之下, 所以可以把adb copy到/usr/bin中, 再刪除SDK目錄
sudo cp ~/Android/Sdk/platform-tools/adb /usr/bin
sudo chmod 7777 /usr/bin/adb
套件安裝
以下為編譯MTK 6582所建議安裝之套件
sudo apt-get install -y git gnupg flex bison gperf zip curl \
libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 \
libreadline-dev:i386 gcc-multilib g++-multilib libxml2-utils \
lib32z1 xsltproc gawk tofrodos libgl1-mesa-dev python-markdown \
libxml2-utils zlib1g-dev:i386 nasm libx264-dev libswscale-dev \
libavformat-dev libffmpeg-nvenc-dev gstreamer1.0-libav \
ffmpeg libffms2-dev