ubuntu 虚拟机下编译SDK记录

一.环境vmWare6.0 , win7 , ubuntu9.0.4desktop.iso, Android-2.1-Real6410-r3.tar

 

二.安装vmWare,然后安装ubuntu9.0。这个步骤这里就不在多说了。

 

三.进入虚拟机,启动Terminal控制行,安装我们所需要的软件

   

 

 sudo apt-get install build-essential
 sudo apt-get install make
 sudo apt-get install gcc
 sudo apt-get install g++
 sudo apt-get install libc6-dev
 
 sudo apt-get install flex
 sudo apt-get install bison
 sudo apt-get install patch
 sudo apt-get install texinfo
 sudo apt-get install libncurses-dev
 
 sudo apt-get install git-core gnupg  //(gnupg系统可能已自带)
 sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl
 sudo apt-get install ncurses-dev
 sudo apt-get install zlib1g-dev
 sudo apt-get install valgrind(可选,有21M大,我觉得一般人是用不到的)
 sudo apt-get install python2.5 (实际上不用装,Ubuntu 8.04 已经自带)
 sudo apt-get install sun-java5-jdk
 
 注意:
 a. 不要用 sun-java6-jdk, 不然在make sdk, 具体来说是make doc这一步中, 遇到这个错误:
   Docs droiddoc: out/target/common/docs/dx
   javadoc: error - In doclet class DroidDoc, method start has thrown an
   exception java.lang.reflect.InvocationTargetException
   com.sun.tools.javac.code.Symbol$CompletionFailure: class file for
   sun.util.resources.OpenListResourceBundle not found
 b. 网上资料说需要设置环境变量, 但我并没有设置:
  export ANDROID_JAVA_HOME=$JAVA_HOME
 
 c. 网上并没有提及要安装ncurses-dev, 但安装之前我编译过程中会出现编译错误

 

到这里所有的准备工作都已经准备完毕了,开始编译android

 

四.android源码的编译

 

   以下步骤请在root权限下完成,如果是普通用户请将权限修改为root权限

 

 

  •  建立android源码的存放目录
     $ mkdir ~/open_src
     $ mkdir ~/open_src/android
     $ cd ~/open_src/android
     $ mkdir bi 
    下载repo脚本,放到~/open_src/android/bin目录下,加上可执行权
              $ curl http://android.git.kernel.org/repo > repo
              $ sudo mv repo ~/open_src/android/bin
              $ sudo chmod a+x ~/open_src/android/bin/repo
  •  在源码存放目录android中执行
     $ ~/open_src/android/bin/repo init -u git://android.git.kernel.org/platform/manifest.git
     //中间会提示输入电子邮件什么的,如果你打算要提交patch的话,用google accounts注册过的邮箱
     在android目录中执行repo sync就可以开始下载源码了.
     我们也可以从其他地方把源码复制到android目录, 而我正是这么做的.
     编译源码, 并得到~/open_src/android/out 目录
     在命令行执行make命令:
     $make
     这是一个很漫长的过程, 等吧......

五.编译完成后会自动的生成一个OUT文件夹,里面就是存放编译后SDK的地方

   

   进入out文件夹下

 

$ cd /host/Linux-x86/sdk/android-sdk_eng.root_Linux-x86/tools

运行

$./android就可以启动android的模拟器了

 

我在做这一步的时候出现了一个错误

org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]

查阅了很多资料最后知道了这个是一个ubuntu的老问题解决方法如下

 

$DISPLAY =:0.0

$xhost

即可

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值