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。