android 4.0.3最新源码下载编译
来源:互联网 发布:js mailto 编辑:程序博客网 时间:2024/05/17 01:42
最新的android4.0源代码公布以后,相信很多人和我一样都跃跃欲试,其实4.0的代码下载和编译和以前的版本差不多,但是有一些小的差别,写下来供不明真相的新手来参考
首先,开发环境,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可能会在编译的最后出现头文件丢失的错误比如:,请按照以下方法修复:
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 xsltproc32-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
填写后即可执行同步命令
6:下载源码
$ repo sync
可加参数: -jx x代表开启多少个线程来下载源码
源码+repo 一共13G左右
如果中间出错或者网络不稳定,可以重新初始化repo,用同一个email即可实现本地git库和服务器git库的同步
编译源码下载完源码后进入源码主目录
1 :执行:
$ source build/envsetup.sh
souce命令执行的是源码包build目录下的envsetup文件
可以看出这个文件里定义了很多函数供编译使用
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 gettopfunction m()function findmakefile()function mm()function mmm()function croot()function pid()function gdbclient()function jgrep()function cgrep()function resgrep()function getprebuiltfunction 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
我们编译后在模拟器中运行,所以选择full
我们选择最大的权限,也就是root后的版本,所以选择eng
3:编译源码
$ make -j4
过程大概3小时
编译完后在源码目录下会生成out文件夹如图
好了,可以检验以下我们编译的源码是否正常运行了
$ emulator
如果提示找不到命令,请初始化环境
$ source build/envsetup.sh$ lunch full-eng
ok,android源码顺利完成,明天进行内核的编译
- android 4.0.3最新源码下载编译
- android 4.0.3最新源码下载编译
- android 4.0.3最新源码下载编译
- android 4.0.3 最新源码下载编译
- android 4.0.3最新源码下载编译
- android 4.0.3最新源码下载编译
- android 4.0.3最新源码下载编译
- android 4.0.3最新源码下载编译
- 最新下载 android 源码方法
- Android 最新源码下载具体步骤
- Android源码下载(最新可用)
- 不翻墙下载Android最新源码。
- Ubuntu下载Android最新源码
- Android源码编译(3)---下载源码
- 编译Android最新源码(090508)
- 编译Android最新源码(090508)
- 下载最新的firefox源码并编译
- mac 版本下载编译chromium最新源码
- iOS应用内打开App Store应用详情界面
- Python特殊语法:filter、map、reduce、lambda [转]
- 数据流图的画法
- linux 安装 Jdk 1.6.45
- ubuntu/centos环境下玩android系统(一): 从编译android开始!
- android 4.0.3最新源码下载编译
- 通过shell进行数学运算的多种方式
- opencv读取图片,视屏,摄像头
- JDBC学习笔记(1)-----温故jdbc
- 【Java.NIO】API —— Buffer接口
- 没有压力,不复美丽
- conkeror使用socks 5 代理
- openCV中canny算法
- 运放中不使用引脚正确处理方式