在某些情況下我們需要查看Android的源碼或對其進行重新編譯,目前只支援在Linux或者Mac OS上編譯Android源碼,暫不支援Windows.所以本篇介紹一下如何在Ubuntu上擷取Android源碼。
Android源碼大約有2.1GB,在這裡可以看到它的結構和更新記錄。
下載Android源碼需要用到Git和Repo。Git是一個開源的分布式版本控制軟體,它非常適合管理很大的項目,專案檔可以分布儲存在多個Git repositories(倉庫), 這樣可以很方便地建立分支,進行版本比較等,所以Android也用它來進行源碼管理。 Repo是基於Git的工具,它可以讓我們更方便地管理Git repositories.
接下來我們要在Ubuntu上面安裝這兩個工具, 在安裝之前要先安裝一些必要的Linux Packages: JDK 5.0(Java 6不支援因為@Override的不相容), lex, bison, gperf, libsdl-dev, libesd0-dev, libwxgtk2.6-dev (optional), build-essential, zip, curl.
在Ubuntu的Terminal運行以下命令: $ sudo apt-get install git-core gnupg flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
這裡需要注意的是sun-java5-jdk的源在Ubuntu9.10後就沒有了, 所以安裝sun-java5-jdk 要切換Sources.list才能安裝,具體可以參考這篇Blog.
Git(上面的git-core)裝完了,接下來裝Repo, 在home目錄建立bin目錄,然後擷取Repo並授於它執行的許可權:
$ cd ~
$ mkdir bin
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
接下來把bin目錄加入$PATH:
$ export PATH=$HOME/bin:$PATH
再接著在home目錄建立mydroid目錄用來存放Android源碼
$ mkdir mydroid
$ cd mydroid
最後下載Android源碼:
$ repo init -u git://android.git.kernel.org/platform/manifest.git
$ repo sync