Mac系統10.11.6
首先建立一個大小寫敏感的鏡像
Finder->應用程序->磁盤工具->文件->新建映像->空白映像->設置名稱爲AndroidSystem ,大小80GB(特別說明,大小最少75GB,本人就吃了虧),格式選osx擴展,區分大小寫,日誌式->確定
到目前,鏡像還是不能區分大小寫。
在磁盤管理工具裏,選中AndroidSystem鏡像->抹掉->選中osx擴展,區分大小寫,日誌式->確定
現在,鏡像是區分大小寫的。
在AndroidSystem鏡像中新建文件夾WorkDirectory,該文件夾就是以後android源碼目錄
安裝編譯環境
安裝jdk1.7
xcode安裝請選擇xcode5.1,不然你會痛苦好幾天,我就是這樣。
直接在apple developer上可以選擇下載相應版本。
https://developer.apple.com/download/
然後
安裝macport
之後
sudo port install gmake libsdl git gnupg
全部安裝完成之後,編譯環境建好
terminal進入WorkDirectory
依次執行下列命令
mkdir ~/bin
sudo vim ~/.bash_profile
在該文件中加入
export PATH=~/bin:$PATH
esc->:wq
保存並退出
source ~/.bash_profile
下面可以參考清華aosp
https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
沒有翻牆的朋友請
sudo vim ~/bin/repo
並修改
REPO_URL = 'https://gerrit-google.tuna.tsinghua.edu.cn/git-repo'
然後執行
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-5.1.0_r1
耐心等待,
ok
完畢之後
爲了防止接下來的工作出錯,出錯讓人抓狂,一等等半天又得重複。所以我們做一些準備工作
開始
系統偏好設置->節能器->電源適配器->選擇永不關閉顯示器,去選如果可能,使硬盤進入睡眠,選中當顯示器關閉時,防止電腦進入休眠
文本編輯器->新建文稿->保存->cmd->修改文件後綴成.sh->打開編輯->輸入50個repo sync ,注意每個repo sync換行->將cmd.sh複製到WorkDirectory下
terminal進入WorkDirectory
執行
sudo chmod a+x cmd.sh
然後
./cmd.sh
耐心等待——————————————————————————————————————————————
如果出現
sync work tree
fetching
代表sync完成,可直接關閉terminal
terminal進入WorkDirectory
執行
rm -r -f .repo
source build/envsetup.sh
lunch
選擇需要的版本
6比較大,所以需要80GB
make
耐心等待————————————————————————————————————————————————
現在高潮來了
可能遇到的問題和解決方式
1,問題;xcode-select:error: tool 'xcodebuild' requires Xcode, but active developer directory'/Library/Developer/CommandLineTools' is a command line tools instance
解決方法;sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
2,問題;<built-in>:0:error: Unknown value ‘10.11’ of -mmacosx-version-min
解決方法;降低xcode版本到6.0
3,問題;system/core/include/log/log.h:35:20:error: stdarg.h: No such file or directory
解決方式;sudo vim build/core/combo/HOST_darwin-x86.mk,
修改對應sdk_version
3,問題;error: Cannotfetch platform/packages/apps/OMA-DM
解決方法;repo sync –f
repo sync
4,問題;xcode-select:error: tool 'xcodebuild' requires Xcode, but active developer directory'/Library/Developer/CommandLineTools' is a command line tools instance
解決方法;sudo xcode-select --switch/Applications/Xcode-beta.app/Contents/Developer/
5,問題;程序包com.sun.javadoc不存在 importcom.sun.javadoc.ClassDoc;
解決方法;
export JAVA_HOME=/library/java/JavaVirtualMachines/jdk1.7.0_71.jdk/contents/Home
export PATH=$JAVA_HOME/bin:$PATH
6,問題;libnativehelper/JNIHelp.cpp:28:10:fatal error: 'string' file not found
解決方法;sudo vim build/core/combo/HOST_darwin-x86_64.mk
手動更改-DMACOSX_DEPLOYMENT_TARGET=10.9(你自己的sdk版本)或者降低xcode版本到5.1
有些問題可能不會遇到,那是因爲一開始裝的的xcode5.1,和之前做的準備工作
編譯完成之後
emulator
至此整個過程完成。
最重要的一點;
**********************************************
* 一定要耐心,沒有問題不能解決 *
* 一定要耐心,沒有問題不能解決 *
* 一定要耐心,沒有問題不能解決 *
**********************************************