【Android源码 栏目提醒】:文章导读:在新的一年中,各位网友都进入紧张的学习或是工作阶段。
网学会员整理了Android源码 -[免费]Ubuntu_10[1].04下编译Android源码全过程(修订版) - 体系结构的相关内容供大家参考,祝大家在新的一年里工作和学习顺利!
Ubuntu 10.04 下编译 Android 源码全过程一、获取 Android 源代码 Git 是 Linux Torvalds(Linux 之父)为了帮助管理 Linux 内核开发而开发的 一个开放源码的分布式版本控制软件,它不同于 Subversion、CVS 这样的集 中式版本控制系统。
在集中式版本控制系统中只有一个仓库(Repository), 许多个工作目录(Working Copy),而在 Git 这样的分布式版本控制系统中 (其他主要的分布式版本控制系统还有 BitKeeper、Mercurial、GNU Arch、 Bazaar、Darcs、SVK、Monotone 等),每一个工作目录都包含一个完整仓 库,它们支持离线工作,本地提交可以稍后提交到服务器上。
因为 Android 是由 Kernel、Dalvik、Bionic、Prebuilt、build 等多个项目组成, 如果我们分别使用 Git 来逐个获取显得很麻烦,所以 Android 项目编写了一 个名为 Repo 的 Python 的脚本来统一管理这些项目的仓库,使得项目的获取 更加简单。
在 Ubuntu 10.04 上安装 Git 只需要设定正确的更新源,然后使用 apt-get 就可 以了, apt-get 是一条 Linux 命令,主要用于自动从互联网的软件仓库中搜索、 安装、升级、卸载软件或操作系统。
apt-get 命令一般需要 root 权限执行,所以一般跟着 sudo 命令。
sudo apt-get install git-core curl 这条命令会从互联网的软件仓库中安装 git-core 和 curl。
其中 curl 是一个利用 URL 语法在命令行方式下工作的文件传输工具,它支 持很多协议,包括 FTP、FTPS、HTTP、HTTPS、TELENT 等,我们需要安 装它从网络上获取 Repo 脚本文件。
curl http://android.git.kernel.org/repo /bin/repo 这句命令会下载 repo 脚本文件到当前主目录的/bin 目录下,并保存在文件 repo 中。
最后我们需要给 repo 文件可执行权限 chmod ax /bin/repo 接下来我们就可以利用 repo 脚本和 Git、 软件获取 Android 的源代码了: curl ) 首先建一个目录,比如/android。
然后使用下面命令获取源码: repo init –u git://android.git.kernel.org/platform/manifest.git 这个过程会持续很长的时间(笔者下载了一天),下载完毕后会看到 repo initialized in /android 这样的提示,说明本地的版本库已经初始化完毕,并且 包含了当前最新的 sourcecode。
如果我们想拿某个分支版本的代码,而不是主线代码,需要使用-b 参数指定 branch 的名字,比如: repo init –u git://android.git.kernel.org/platform/manifest.git –b cupcake 如果我们只是想获取某一个 project 的代码,比如 kernel/common,就不需要 repo 脚本了,直接使用 Git 工具即可,如果仔细研究 repo 脚本会发现,repo 脚本其实就是组织 Git 工具去获取各个 Project 并把它们组织到同一个项目 Android 内。
git clone git://android.git.kernel.org/kernel/common.git 我们上面使用 repo 脚本获取了各个项目,那么接下来就需要把整个 Android 代码树同步到本地,如下: repo sync project1 project2 … 笔者使用 repo sync 命令直接同步全部项目到本地。
二、源码编译 全部同步完毕后,进入到 Android 目录下,使用 make 命令编译,你会发现 出现如下错误提示: host C: libneo_cgi /bin/repo别忘了给 repo 可执行权限chmod ax /bin/repo1安装 Git 和 curl。
因为我是用的 Ubuntu 环境,在终端下输入如下命令。
jianhui.jin sudo apt-get install git-core jianhui.jinsudo apt-get install curl2;安装 Repo 在终端机中输入: jianhui.jin curl http://android.git.kernel.org/repo /bin/repo jianhui.jin chmod ax /home/a/bin/repo3;这时个你须要建立一个工程目录,随便 MKDIR 一个目录就可以了,然后再进入到你要下载源码的目录,完事之后就再将 andoid 源码下载到你刚才建立的目录下面。
jianhui.jinrepo -init -u git://androi