天天看點

Mac Android 源碼下載下傳 編譯 運作 Android6.0.1

     其實之前也有下載下傳過完整的android 源碼,但是從來沒有對這個做過一些總結,在加上最近需要經常去看,索性就在從新下載下傳,編譯一下,其實這些東西 官網上面都有。http://source.android.com/  這個是網址,英文不錯的朋友可以直接看這個,還有點想說,現在都6.0.1了 如果編譯舊的版本好多東西都需要重新改, 建議編譯6.0.1 比較省力,當然看各自的需求了。

     我的環境 - 系統版本  OS X  10.11.2 - jdk1.7.0_51.jdk - Xcode 7.1.1 -GNU Make 3.81

下載下傳源碼:

1.在使用者目錄下 建立 ~/bin   添加以下指令到~/.bash_profile   export PATH=~/bin:$PATH 2.安裝repo。     具體參考 https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/      如果中間斷掉 繼續同步就可以了

編譯: 1. 建立大小寫敏感的磁盤鏡像 可以通過磁盤管理工具進行設定,也可以通過以下指令生成鏡像檔案 hdiutil create -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 70g ~/Android.dmg.sparsefile 2.挂載磁盤 hdiutil attach ~/android.dmg.sparseimage -mountpoint /Volumes/android 成功之後 會有 /dev/disk2          GUID_partition_scheme /dev/disk2s1        EFI /dev/disk2s2        Apple_HFS                      /Volumes/android 注意 這裡需要在不同的使用者下挂載,比如說這個 是挂載在系統目錄下的。 3.之後 将下載下傳好的源碼 放在 大小寫敏感的磁盤下面。可以将.repo目錄删除 4.執行 source build/envsetup.sh 5.執行 lunch 選擇相應的項 6.執行 make -j4 有時會報類似于 Please install the 10.5 SDK on this machine at /Developer/SDKs/MacOSX10.5.sdk 錯誤,6.0編譯的時候  編譯檔案 已經配置了多個SDK 如果還是沒有的話,隻需要将 Xcode 包 中的sdk添加進去就可以了。

7.在編譯iptables的時候會缺少一些檔案 在external/iptables/include/linux目錄下,添加缺少的檔案,可以參閱http://git.oschina.net/androidsourcecode/external_iptables/tree/master/include/linux 其實目錄下面是有這些檔案的,但是由于大小寫的問題是以需要在手動添加,這裡注意添加的時候 注意源檔案的 内容,添加完之後  最好在檢查一遍,我在這裡被坑了好多次。 8.重新執行 make -j4  大概執行 3個多小時 就編譯完成了

編譯成功會出現以下資訊: Generated: (out/target/product/generic/android-info.txt Target system fs image: out/target/product/generic/obj/PACKAGING/systemimage_unopt_intermediates/system.img Install system fs image: out/target/product/generic/system.img Target ram disk: out/target/product/generic/ramdisk.img Target userdata fs image: out/target/product/generic/userdata.img

運作模拟器      在~/ out/target/product/generic_x86_64 目錄下運作指令: emulator -image system.img -data userdata.img -ramdisk ramdisk.img 

然後模拟器就起來了 

繼續閱讀