• Ubuntu 10.10从零开始建立android 2.2 froyo开发环境


    为了建立android的开发环境,刚安装了一个Ubuntu 10.10 32-bit,记录下建立android 2.2开发环境的过程和解决的问题。


    http://blog.csdn.net/l_serein/article/details/6415861


    准备下载环境

    参照官方网站准备下载环境

    1. $ sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev valgrind 

    准备JDK和Eclipse

    froyo最新版的build已经不需要JDK1.5了,直接下载一个linux 32-bit的JDK1.6就行。不太喜欢Ubuntu支持JDK/Eclipse带来的新问题,因此直接下载jdk-6u22-linux-i586.bin并在/opt目录运行安装,为了简单,我把安装后的目录换名jdk1.6。

    Eclipse一定要下载Java EE版本,因为ADT插件的build需要。我下载的是3.5.2的Eclipse包eclipse-jee-galileo-SR2-linux-gtk.tar.gz。同样展开在/opt目录,方法就不赘述了。

    修改/etc/environment并重新登录:

    1. $ sudo ln -s /opt/eclipse/eclipse /usr/bin/eclipse 
    2. $ sudo vi /etc/environment 
    3. PATH = "/opt/jdk1.6/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"  
    4. JAVA_HOME =/opt/jdk1.6 
    5. JAVA_BIN =/opt/jdk1.6/bin 
    6. CLASSPATH =/opt/jdk1.6/lib/dt.jar:/opt/jdk1.6/lib/tools.jar 
    7. ECLIPSE_HOME =/opt/eclipse 

    下载Android源码

    按照官方网页http://source.android.com/source/download.html指导下载Android源码,也不赘述。

    1. $ sudo curl http://android.git.kernel.org/repo  > /bin/repo 
    2. $ sudo chmod a+x /bin/repo 

    我是在/work文件系统中建立android下载目录的,注意这里最好有10GB以上剩余空间。 

    1. $ sudo mkdir /work/android 
    2. $ sudo chown carl /work/android 
    3. $ cd /work/android 
    4. $ repo init -u git://android.git.kernel.org/platform/manifest.git
    5. $ repo sync 

    编译Android SDK

    Android 2.2源码直接支持JDK1.6和64-bit Linux,反而32-bit Linux还需要手工修改一些文件。错误如下

    Only 64-bit build environments are supported beyond froyo/2.2.

    修改方法具体请参阅

    http://limssb.blog.163.com/blog/static/14730437201093092640133/

    为方便,下面转载如下

    1. project build/ 
    2. diff --git a/core/main.mk b/core/main.mk 
    3. index f761ba5..4ee4bf9 100644 
    4. --- a/core/main.mk 
    5. +++ b/core/main.mk 
    6. @@ -68,7 +68,7 @@ $(info Checking build tools versions...) 
    7.   
    8.  ifeq ($(BUILD_OS),linux) 
    9.  build_arch : = $(shell uname -m) 
    10. -ifneq (64,$(findstring 64,$(build_arch))) 
    11. +ifneq (i686,$(findstring i686,$(build_arch))) 
    12.  $(warning ************************************************************) 
    13.  $(warning You are attempting to build on a 32-bit system.) 
    14.  $(warning Only 64-bit build environments are supported beyond froyo/2.2.) 
    15.  
    16. project external/clearsilver/ 
    17. diff --git a/cgi/Android.mk b/cgi/Android.mk 
    18. index 21c534b..37b8246 100644 
    19. --- a/cgi/Android.mk 
    20. +++ b/cgi/Android.mk 
    21. @@ -13,8 +13,8 @@ LOCAL_C_INCLUDES : = $(LOCAL_PATH)/.. 
    22.  LOCAL_CFLAGS : = -fPIC 
    23.   
    24.  # This forces a 64-bit build for Java6 
    25. -LOCAL_CFLAGS += -m64 
    26. -LOCAL_LDFLAGS += -m64 
    27. +LOCAL_CFLAGS += -m32 
    28. +LOCAL_LDFLAGS += -m32 
    29.   
    30.  LOCAL_NO_DEFAULT_COMPILER_FLAGS : true  
    31.   
    32. diff --git a/cs/Android.mk b/cs/Android.mk 
    33. index 9f0e30a..275845d 100644 
    34. --- a/cs/Android.mk 
    35. +++ b/cs/Android.mk 
    36. @@ -9,8 +9,8 @@ LOCAL_C_INCLUDES : = $(LOCAL_PATH)/.. 
    37.  LOCAL_CFLAGS : = -fPIC 
    38.   
    39.  # This forces a 64-bit build for Java6 
    40. -LOCAL_CFLAGS += -m64 
    41. -LOCAL_LDFLAGS += -m64 
    42. +LOCAL_CFLAGS += -m32 
    43. +LOCAL_LDFLAGS += -m32 
    44.   
    45.  LOCAL_NO_DEFAULT_COMPILER_FLAGS : true  
    46.   
    47. diff --git a/java-jni/Android.mk b/java-jni/Android.mk 
    48. index 21b4fd1..c1d38d2 100644 
    49. --- a/java-jni/Android.mk 
    50. +++ b/java-jni/Android.mk 
    51. @@ -34,8 +34,8 @@ LOCAL_C_INCLUDES : = / 
    52.  LOCAL_CFLAGS += -fPIC 
    53.   
    54.  # This forces a 64-bit build for Java6 
    55. -LOCAL_CFLAGS += -m64 
    56. -LOCAL_LDFLAGS += -m64 
    57. +LOCAL_CFLAGS += -m32 
    58. +LOCAL_LDFLAGS += -m32 
    59.   
    60.  LOCAL_NO_DEFAULT_COMPILER_FLAGS : true  
    61.   
    62. diff --git a/util/Android.mk b/util/Android.mk 
    63. index 386f379..b694ef4 100644 
    64. --- a/util/Android.mk 
    65. +++ b/util/Android.mk 
    66. @@ -18,8 +18,8 @@ LOCAL_C_INCLUDES : = $(LOCAL_PATH)/.. 
    67.  LOCAL_CFLAGS : = -fPIC 
    68.   
    69.  # This forces a 64-bit build for Java6 
    70. -LOCAL_CFLAGS += -m64 
    71. -LOCAL_LDFLAGS += -m64 
    72. +LOCAL_CFLAGS += -m32 
    73. +LOCAL_LDFLAGS += -m32 
    74.   
    75.  LOCAL_NO_DEFAULT_COMPILER_FLAGS : true  

    编译SDK并配置环境

    如下就是编译SDK

    1. $ cd / work /android  
    2. $ make sdk  

    编译完后会在out/host/linux-x86/sdk目录下生成一个zip文件,我的是android-sdk_eng.carl_linux-x86.zip。展开到/opt目录下并配置环境 

    1. $ sudo unzip -e /work/android/out/host/linux-x86/sdk/android-sdk_eng.carl_linux-x86.zip 
    2. $ sudo chown -R carl  android-sdk_eng.carl_linux-x86/ 
    3. $ sudo vi /etc/environment 
    4. PATH = "/opt/android-sdk_eng.carl_linux-x86/tools:/opt/sdk/android-sdk_eng.carl_linux-x86/platform-tools:/opt/jdk1.6/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"  

     重新登录下。

    编译ADT

    我下载的android 2.2源码中有个问题,编译ADT插件的时候会出错,修改sdk/eclipse/scripts目录下的build_plugins.sh即可。原来的CONFIG_DIR目录会/work/android并列目录下生成out,产生权限问题。

    1. $ vi / work /android/sdk/eclipse/scripts/build_plugins.sh 
    2. ... 
    3. CONFIG_DIR="../../out/eclipse-configuration-$BUILD_VERSION"  
    4. ... 

    如下可以编译Eclipse插件

    1. $ mkdir ~/adt 
    2. $ cd /work /android/sdk/eclipse/scripts 
    3. $ ./build_server.sh ~/adt 

    在~/adt目录下生成了Eclipse插件包android-eclipse-v201011020546.zip。

    安装Eclipse插件

    Help->Install New Software选取Archive...参见下图安装Eclipse插件(添加链接)

    https://dl-ssl.google.com/android/eclipse/

    至此Android编译开发环境全部完成。


  • 相关阅读:
    UVA11584 划分成回文串
    UVA1220Party at Hali-Bula(树的最大独立集 + 唯一性判断)
    BUAA1389愤怒的DZY(最大值最小化)
    九度1502 最大值最小化问题
    App(4.25)
    App(4.24)
    App(4.23)
    App(4.22)
    学习进度条(八)
    App(4.21)
  • 原文地址:https://www.cnblogs.com/yuzaipiaofei/p/4124668.html
Copyright © 2020-2023  润新知