现在的位置: 首页 > 综合 > 正文

不用SDK,直接在编译的源代码中运行emulator?

2013年09月15日 ⁄ 综合 ⁄ 共 1272字 ⁄ 字号 评论关闭
懒了好久了,现在开始接触Andorid,觉得把一些心得与教训记录在这里比较方便,先从最基本的开始吧:

1、下载Android源代码,有很多相关的信息可以参考
      如参考下面的链接
       http://www.androidchina.org.cn/56.html

2。 编译Andrid源代码

  • 在32位下编译,直接make就可以了
  • 在64位下编译,会出一些错误,需要额外安装一些包:

     A, 没有gnu/stubs-32.h文件:
      /usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: 没有该文件或目录
      make: *** [out/host/linux-x86/obj/EXECUTABLES/acp_intermediates/acp.o] 错误 1
解决方法:

  • 确定你的系统是x86_64 GNU/Linux

       root@mm-desktop:/home/mm/android# uname -a
       Linux mm-desktop 2.6.27-9-generic #1 SMP Thu Nov 20 22:15:32 UTC 2008 x86_64 GNU/Linux

  • 安装libc6-dev-i386

     sudo apt-get install libc6-dev-i386

     B。找不到-lstdc++
     /usr/bin/ld: cannot find -lstdc++
解决方法:

  • 安装 g++-multilib,lib32z1-dev 和 lib32ncurses5-dev

      apt-get install g++-4.2-multilib  lib32z1-dev lib32ncurses5-dev

3。 运行Android emulator:

  •     修改/etc/environment文件,添加emlator相关的环境变量:

      sudo vi /etc/environment
   
      添加Android的emulator目录到$PATH中
      如:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:~/android/out/host/linux-x86/bin“

      设置ANDROID_PRODUCT_OUT目录,此目录包含了emulator所需要的三个影像文件

      ANDROID_PRODUCT_OUT="/home/android/out/target/product/generic"

      设置emulator需要的内核影像,将其链接到ANDROID_PRODUCT_OUT目录:

      ln -sf ~/android/prebuilt/android-arm/kernel/kernel-qemu  ~/android/out/target/product/generic

  • 运行emulator

   现在直接输入:sudo emulator,模拟器就会出来了。

抱歉!评论已关闭.