1、安裝windows環境,以及cygwin,下載及安裝詳見:http://blog.csdn.net/happyhell/archive/2010/06/29/5702846.aspx
2、把Build好的android目錄拷貝到Windows系統中。
3、 在Build指令碼中指定SDK版本號碼
指令檔位置在development/build/tools/make_windows_sdk.sh
找到'SDK_NUMBER',將其值設定為2.2。如下所示:
#SDK_NUMBER=`echo $filename | sed -n 's/^.*_/([^_./]/+/)_[^_.]*/..*$//1/p'`
SDK_NUMBER=2.2
修改CYG_MGWZ_PATH 為自己cygwin安裝的目錄,否則會報以下錯誤
Error: Cygwin is missing /cygdrive/g/cygwin/bin/mgwz.dll. Use -no-mgwz to overri
de.
Aborting
4、 啟動cygwin,執行如下步驟
$ cd mydroid
$ mkdir -p out/host/windows-x86/sdk
$ development/build/tools/make_windows_sdk.sh out/host/linux-x86/sdk/android-sdk_eng.me_linux-x86.zip out/host/windows-x86/sdk
現在到out/host/windows-x86/sdk目錄裡看一下吧,SDK的zip壓縮包檔案應該在那裡了。
補充:
一、如果 執行第4步出錯:
make: *** [out/host/windows-x86/obj/EXECUTABLES/aapt_intermediates/AaptAssets.o]
Error 1
Error: Build failed
Aborting
這是因為預設編譯時間用的是gcc-4,而目前Cygwin中的gcc-4還沒有包含“mingw-targeted cross-compiler”,可能以後會支援。
執行 /cygwin/bin/set-gcc-default-3.sh
使用gcc-3。
二、java 安裝路徑
在windows下Java的預設安裝路徑為C:/Program Files/java,但在Cygwin下就會不識別全路徑,最好java更改安裝路徑。
同時在環境變數中設定path:C:/Java/jdk1.6.0_20/bin;
否則會報錯:build/core/find-jdk-tools-jar.sh: line 9: [: /cygdrive/c/Program:
binary operator expected
三、下載toolchain源碼
:http://android.git.kernel.org/pub/android-toolchain-20081019.tar.bz2
或者:http://android.git.kernel.org/pub/android-ndk-toolchain-20090323.tar.bz2
需要在Cygwin下編譯。
因為預設的代碼沒有包含windows的toolchain。
1.解壓檔案,並進入目錄,執行如下命令配置要編譯的target及安裝的目錄:
./configure --target=arm-eabi --prefix=/cygdrive/d/Android/cupcake/toolchain
雖然安裝目錄可稍後安裝配,但推薦在配置時設定好,目錄一定要是絕對路徑,如要裝在 D:/Android/cupcake/toolchain,則為:/cygdrive/d/Android/cupcake/toolchain。
在編譯android-toolchain-20081019這個交叉編譯器時,不能指定--target=arm-eabi, 而應該指定--target=arm-android-eabi,否則編譯會報錯。
20090323 則可以直接編譯過(./configure --target=arm-eabi --prefix=/cygdrive/d/Android/cupcake/toolchain)。
2.執行:make build 命令,如果有錯誤按提示再編譯,一般沒有什麼大問題;
3.安裝:make install。