今天试着下载了android 2.3.1编译了下,为了愉快,选择的是64bit 10.04.1 Ubuntu Host。

编译起来的确很愉快,安装必要的包之后很快就编译好了。

Q: 老版本linux系统(如ubuntu9.1)下编译的问题:version: GLIBC_2.11 not found

A:Google大爷预编译的cross-compiler tool-chain需要的glibc比你系统的glibc新,因此,这些toolchain没法正常使用。解决办法请参见

http://fanwei51880.blog.163.com/blog/static/32406740201011311208431/

 

Q: 感觉SDK很奇怪,自己编译的sdk包竟然不包含Platform package以致无法创建AVD。

A: Android Open Source Gingerbread现在未公开Android SDK Updater rev 8的源码,而android 2.3的Platform 9是依赖于最低版本Updater 8的,所以无法看见,只需要编译好Android SDK之后,下载一个空的Android SDK r08,把platforms目录下的子目录拷贝到相应目录即可。

Q: Android Updater把我识别为Preview版本怎么办?

A: 首先需要了解Android编译系统的版本设置,然后修改如下几个文件重新m sdk即可。

build/core/version_defaults.mk

  1. #### 
  2. ifeq "" "$(PLATFORM_VERSION)" 
  3.   # This is the canonical definition of the platform version, 
  4.   # which is the version that we reveal to the end user
  5.   # Update this value when the platform version changes (rather 
  6.   # than overriding it somewhere else).  Can be an arbitrary string. 
  7.   PLATFORM_VERSION := 2.3 
  8. # 设置为2.3而不是2.3.1 
  9. endif 
  10. #### 
  11.  
  12. ifeq "" "$(BUILD_NUMBER)" 
  13.   # BUILD_NUMBER should be set to the source control value that 
  14.   # represents the current state of the source code.  E.g., a 
  15.   # perforce changelist number or a git hash.  Can be an arbitrary string 
  16.   # (to allow for source control that uses something other than numbers), 
  17.   # but must be a single word and a valid file name
  18.   # 
  19.   # If no BUILD_NUMBER is setcreate a useful "I am an engineering build 
  20.   # from this date/time" value.  Make it start with a non-digit so that 
  21.   # anyone trying to parse it as an integer will probably get "0"
  22. #  BUILD_NUMBER := eng.$(USER).$(shell date +%Y%m%d.%H%M%S) 
  23.   BUILD_NUMBER := 1 
  24. # BUILD_NUMBER设置为任何数字即可 
  25. endif 

build/core/build_id.mk

  1. #### 
  2. # BUILD_ID is usually used to specify the branch name 
  3. # (like "MAIN"or a branch name and a release candidate 
  4. # (like "TC1-RC5").  It must be a single word, and is 
  5. # capitalized by convention. 
  6. BUILD_ID := CTH01 
  7. #### 

截图如下

Customed Android Version