`
andy_叶
  • 浏览: 68038 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

android 4.0.3最新源码下载编译

阅读更多

首先,开发环境,google建议在ubuntu10.0.4下,并且最好是64位,既然是为了工作和学习,就尽量按照官方要求的来吧。

Python 2.5 -- 2.7  ubuntu10.0.4已经默认安装了,所以不需要安装,其他环境需要安装

JDK 6   编译4.0需要jdk 6 ,sdk的编译需要jdk 5

Git 1.7 or newer

如果你的ubuntu是32位的,请在源码下载后编译前按以下步骤修改:

下载完源码后,修改下面四个文件:external/clearsilver/cgi/Android.mk
                                                            external/clearsilver/java-jni/Android.mk
                                                           external/clearsilver/util/Android.mk
                                                          external/clearsilver/cs/Android.mk

将其中的 LOCAL_CFLAGS += –m64
                LOCAL_LDFLAGS += –m64

修改为    LOCAL_CFLAGS += –m32
               LOCAL_LDFLAGS += –m32

在build/core/main.mk

找到  ifneq (64,$(findstring 64,$(build_arch)))

将其修改为 ifneq (i686,$(findstring i686,$(build_arch)))

如果你装的ubuntu是最新的11.04打头的,由于内核版本的bug可能会在编译的最后出现头文件丢失的错误比如:image_thumb ,请按照以下方法修复:

repo download platform/external/qemu 22776/1  如果你是10.0.4就不要做多余的事情了,如果你修复了,编译出的版本可能会出现黑屏现象进入不了系统,切记!

编译的环境不同,碰到的问题也会千奇百怪,如果你编译出问题了请养成google和百度的习惯

  1:jdk的安装比较简单,就不做介绍了

  2:安装依赖库:

        64-bit:

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
  x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
  libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
  libxml2-utils xsltproc
32-bit
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev \
  libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown \
  libxml2-utils xsltproc

     On Ubuntu 10.10:

    $ sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so

     On Ubuntu 11.10:

    $ sudo apt-get install libx11-dev:i386
 3:下载Repo
$ mkdir ~/bin $ PATH=~/bin:$PATH

$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo $ chmod a+x ~/bin/repo

4: 创建源码目录:

$ mkdir ANDROID_SOURCE

$ cd ANDROID_SOURCE

5: 获取git上的android源码版本
$ repo init -u https://android.googlesource.com/platform/manifest
我们下载最新版
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.3_r1
此时需要你填写用户名和email
image

填写后即可执行同步命令
6:下载源码
$ repo sync
可加参数: -jx x代表开启多少个线程来下载源码
源码+repo  一共13G左右(因为repo会自动执行check out 命令)
如果中间出错或者网络不稳定,可以重新初始化repo,用同一个email即可实现本地git库和服务器git库的同步
编译源码



下载完源码后进入源码主目录 
1 :执行:
$ source build/envsetup.sh
souce命令执行的是源码包build目录下的envsetup文件
image

可以看出这个文件里定义了很多函数供编译使用
function help()
function get_abs_build_var()
function get_build_var()
function check_product()
function check_variant()
function setpaths()
function printconfig()
function set_stuff_for_environment()
function set_sequence_number()
function settitle()
function choosetype()
function chooseproduct()
function choosevariant()
function tapas()
function choosecombo()
function print_lunch_menu()
function lunch()
function gettop
function m()
function findmakefile()
function mm()
function mmm()
function croot()
function pid()
function gdbclient()
function jgrep()
function cgrep()
function resgrep()
function getprebuilt
function tracedmdump()
function runhat()
function getbugreports()
function startviewserver()
function stopviewserver()
function isviewserverstarted()
function smoketest()
function runtest()
function runtest_py()
function godir ()
2:选择一个target
$ lunch full-eng
image

我们编译后在模拟器中运行,所以选择full
image

我们选择最大的权限,也就是root后的版本,所以选择eng
3:编译源码
$ make -j4
过程大概3小时
编译完后在源码目录下会生成out文件夹如图
image

好了,可以检验以下我们编译的源码是否正常运行了
$ emulator
如果提示找不到命令,请初始化环境
$ source build/envsetup.sh
$ lunch full-eng
image

 
ok,android源码顺利完成,明天进行内核的编译



  


  
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    [Android]Ubuntu12.04下编译和下载Android4.0.3源码

    Ubuntu12.04下编译和下载Android4.0.3源码

    android源码下载编译

    此文档详细记录了本人ubuntu下搭建ubuntu环境,android源码下载环境,下载android 4.0.3源码及编译的过程。如果有问题,可以直接来问我。

    ntfs-3g移植到android4.0.3

    该代码是我移植到android4.0.3下的ntfs-3g源码,已顺利通过编译,测试通过

    Android ZXing 2.3.0源码及编译后的core-2.3.0.jar和android-integration-2.3.0.jar打包亲测可用

    最近2013-11-29(Nov 29, 2013)更新的Android ZXing 2.3.0 release源码及编译后的core-2.3.0.jar和android-integration-2.3.0.jar打包亲测可用,如大家有兴趣自己编译的话请参考下面的教程。 下面我写的教程修改自...

    编译Android源码和内核源码的归纳总结

    经过一个多星期的努力,终于在零基础的情况下在ubuntu-12.04-desktop-amd64(64位Ubuntu系统)成功编译了android-4.0.3的

    Android应用源码适合做套壳的简易浏览器

    比较适合用来学习WebView控件使用或者做一个简单的客户端,第一次自动打开的页面和点击右上角小房子按钮转转跳到的链接都可以在MainActivity里面指定,其他情况看截图或者看源码吧,编译版本4.0.3编码GBK

    Android例子源码自动连接已经配置好的指定的wifi的简单例子

    本项目是一个实现自动连接指定的wifi的功能,可以检测...程序比较简单,仅供参考,javaapk之前也发布过很多关于androidwifi开发的源码,需要更多wifi相关源码可以访问http://www./?s=wifi 本项目编码UTF-8编译版本4.0.3

    Android游戏源码简单祖玛游戏源码

    本项目是一个祖玛游戏源码,游戏只有一张简单的地图,游戏分辨率适配貌似有点问题,画质也比较渣(也有可能是手机分辨率太高!...源码有注释,项目编译版本4.0.3编码GBK。想做这方面的朋友可以看一下

    Android应用源码老年人居家看护系统安卓智能家居源码.zip

    这是一款很不错的智能家居系统手机客户端应用源码,该应用的源码比较完整,而且功能也很强大,应用可以实现了蓝牙的链接,还包括PDA端部分,以及和智能终端部分,很好地实现了一套...项目编码UTF-8,默认编译版本4.0.3

    基于havlenaptr ffmpeg 项目修改编译后的android工程文件源码

    基于havlenaptr ffmpeg 项目修改编译后的android工程文件源码,包括了编译后的libffmpeg_jni.so。已修改了原有代码中编译不过的错误,并且可以运行。(本机系统4.0.3,libjnivideo.so,libjniaudio.so应于你的系统...

    Android例子源码图片转换成视频实现屏幕录像.zip

    本项目是一个把图片生成为mp4实现屏幕录像的例子源码,原理是先给屏幕不断截图,结束以后再把图片转成视频,录制结束可以把图片生成为MP4然后保存到SDCard,项目需要ROOT权限,我用...项目编码UTF-8默认编译版本4.0.3

    展讯Spreadtrum MocorDroid 4.0.3 编译及客户化配置文档

    展讯Spreadtrum MocorDroid 4.0.3 编译及客户化配置文档 本文主要介绍 Spreadtrum MocorDroid 4.0.3 编译命令、注意事项以及基于8810 的 4.0.3、 8825的 4.0.3 版本的客户化配置。即使是展讯平台其他的主芯片,也...

    Android例子源码自带下拉刷新的瀑布流例子源码.zip

    本例子是一个最简单的查询手机归属地的源码,使用到了下拉刷新和afinal框架图片数据使用的是duitang.com的图片,可以根据屏幕大小计算每列大小最终拼凑成类似...真实效果与截图一致,本项目默认编译版本4.0.3编码UTF-8

    new_history

    工程创建之后需要更改SDK的版本,右键工程,选择Properties---->Android--->Android4.0.3(API版本 高于15都可以)--->OK。但这时,工程还是不能运行的,主要的原因是源码中调用了部分Android 未公开的API。这时就...

    Android游戏源码简单祖玛游戏源码.zip

    本项目是一个祖玛游戏源码,游戏只有一张简单的地图,游戏分辨率适配貌似有点问题,画质也比较渣(也有可能是手机分辨率太高!...源码有注释,项目编译版本4.0.3编码GBK。想做这方面的朋友可以看一下

    Android例子源码调用系统接口实现屏幕截图

    本例子是一个安卓屏幕截图例子源码,直接调用系统接口实现截图,截图操作的时候需要Root权限,android2.3.7系统测试有效,没有测试4.0以上的系统,不过应该也可以,源码有比较详细的注释,需要的朋友可以看一下。...

    Android例子源码图片旋转缩放加盖水印透明倾斜扭曲处理

    本项目是一个图片处理的综合例子源码,实现了图片的旋转,缩放,加盖水印,透明,倾斜,扭曲用到的图片是使用httpclient 实现在线图片的下载展示,并实现图片处理。如果,网络图片不存在了,请在代码中修改图片路径...

    Android例子源码安卓后台服务监控流量统计

    本例子是一个安卓流量统计的小例子,可以统计每个应用的网络流量,区分移动网络与WIFI ...之前用掉的不能统计),以前也发布过一些关于流量统计的源码,在网站内搜“流量”就可以找到,本项目编码UTF-8默认编译版本4.0.3

    Android例子源码图片旋转缩放加盖水印透明倾斜扭曲处理.zip

    本项目是一个图片处理的综合例子源码,实现了图片的旋转,缩放,加盖水印,透明,倾斜,扭曲用到的图片是使用httpclient 实现在线图片的下载展示,并实现图片处理。如果,网络图片不存在了,请在代码中修改图片路径...

    Android应用源码老人居家看护系统.zip

    翻了翻源码发现有涉及蓝牙、UDP、和一些摄像头操作代码,应该是通过内网进行摄像头数据的直接传输吧,感兴趣的朋友可以自己下载研究一下,项目编译版本4.0.3默认编码UTF-8源码有注释

Global site tag (gtag.js) - Google Analytics