日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

一、安卓系统源码下载

發布時間:2024/8/1 windows 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一、安卓系统源码下载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言:為了研究安卓系統,我們需要下載安卓源碼,本篇博文參考安卓官網https://source.android.com ,對安卓系統各個版本源碼的下載做出了詳細解釋。

一、環境要求概覽

在下載編譯安卓系統源碼前,我們必須對各個版本安卓系統源碼的編譯環境有一定了解,否者可能導致安卓系統源碼編譯失敗。

1 硬件要求

硬件應該滿足以下條件:
● Android 2.3.x Gingerbread(姜餅) 以及包括 master branch (主分支)在內以上的新版本,要求 以 64 位系統環境編譯。Android 2.3.x之前的舊版本可以以 32 系統環境編譯。
●至少100GB的磁盤空間用于校驗。單個版本編譯需要150GB磁盤空間,多版本編譯需要200GB以上成磁盤空間。如果你使用ccache(complier cache 編譯器緩存 ,可以提高編譯速度),你會需要更多的空間。
● 如果在虛擬機上運行 Lunix,至少需要 16GB的RAM/swap空間。
(ps:后兩條要求可能以最新系統版本編譯環境要求的,實際上我們很可能達不到。)

2 軟件要求

Android Open Source Project (AOSP) master branch (主分支)通常在Ubuntu Long Term Support (LTS) 發行版上測試開發,但也可能在其它版本上測試開發。
你的工作環境必須包含以下軟件列表:

1. 操作系統

安卓系統源碼通常在Linux或者Mac OS 操作系統上進行編譯。也可能在虛擬機中進行編譯。

Linux

● Android 6.0 (Marshmallow) - AOSP master: Ubuntu 14.04 (Trusty)
Android 2.3.x (Gingerbread) - Android 5.x (Lollipop): Ubuntu 12.04 (Precise)
● Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Ubuntu 10.04 (Lucid)

Mac OS (Intel/x86)

● Android 6.0 (Marshmallow) - AOSP master: Mac OS v10.10 (Yosemite) or later with Xcode 4.5.2 and Command Line Tools
● Android 5.x (Lollipop): Mac OS v10.8 (Mountain Lion) with Xcode 4.5.2 and Command Line Tools
● Android 4.1.x-4.3.x (Jelly Bean) - Android 4.4.x (KitKat): Mac OS v10.6 (Snow Leopard) or Mac OS X v10.7 (Lion) and Xcode 4.2 (Apple’s Developer Tools)
● Android 1.5 (Cupcake) - Android 4.0.x (Ice Cream Sandwich): Mac OS v10.5 (Leopard) or Mac OS X v10.6 (Snow Leopard) and the Mac OS X v10.5 SDK

2. Java Development Kit (JDK)

由于Ubuntu 14.04沒有可支持使用的OpenJDK 8 軟件包,所以Ubuntu 14.04必須手動安裝Ubuntu 15.04 OpenJDK 8包才可使用
● The master branch of Android in AOSP: Ubuntu - OpenJDK 8, Mac OS - jdk 8u45 or newer
● Android 5.x (Lollipop) - Android 6.0 (Marshmallow): Ubuntu - OpenJDK 7, Mac OS - jdk-7u71-macosx-x64.dmg
● Android 2.3.x (Gingerbread) - Android 4.4.x (KitKat): Ubuntu - Java JDK 6, Mac OS - Java JDK 6
● Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Ubuntu - Java JDK 5

3. Key packages

Python 2.6 – 2.7 下載官網 python.org
GNU Make 3.81 – 3.82 下載官網:gnu.org ; Android 4.0.x (Ice Cream Sandwich) 以及之前的版本需要 使用 maker 3.81 來避免編譯錯誤。
Git 1.7 + 下載官網 git-scm.com

二、構建編譯環境

本節將介紹如何構建本地編譯環境。

1.選擇一個版本分支

不同版本的系統源碼要求不同的編譯環境,下面給出了安卓系統各個版本的相關信息。

● 代碼名稱、版本、API級別以及相應的NDK版本信息

● 源碼標簽以及編譯版本

Factory Images for Nexus Devices下載:https://developers.google.com/android/nexus/images
Binaries for Nexus Devices 下載:
https://developers.google.com/android/nexus/drivers

2.設置 Linux平臺編譯環境

下面的指令適用于各個分支,包括主分支(master 最新版本)。
安卓系統通常在最近的系統版本Ubuntu LTS (14.04)上進行進行測試。
Gingerbread (2.3.x) 以及以上的版本(包括master在內)要求64-bit 系統環境, Gingerbread (2.3.x) 之前的版本可以在32-bit系統環境上進行編譯。

●安裝JDK

安卓系統主分支(master 最新博文)要求Java 8語言.并且要求在烏班圖上使用OpenJDK。
安卓系統各個版本使用的JDK版本,請查看本篇博文第一節中的JDK小節。

Ubuntu >= 15.04

運行下面的指令

$ sudo apt-get update $ sudo apt-get install openjdk-8-jdk

Ubuntu LTS 14.04

Ubuntu 14.04沒有針對該系統版本開發的OpenJDK 8 安裝包,但是Ubuntu 15.04 OpenJDK 8 安裝包可以在Ubuntu 14.04上成功安裝運行使用, 更新的 OpenJDK 8 安裝包 (e.g. those for 15.10, 16.04) 在Ubuntu 14.04上無法使用上面的指令進行安裝使用。

1.從archive.ubuntu.com 下載64-bit 架構的.deb安裝包

openjdk-8-jre-headless_8u45-b14-1_amd64.deb with SHA256
0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
openjdk-8-jre_8u45-b14-1_amd64.debwith SHA256
9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
openjdk-8-jdk_8u45-b14-1_amd64.deb with SHA256
6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c

2.對安卓包進行sha256sum校檢(可省略本步驟)

例如使用sha256sum工具進行校檢

$ sha256sum {downloaded.deb file}
3.安裝JDK安裝包
$ sudo apt-get update

運行你下載的3個安裝包,在安裝過程中可能提示你安裝相應的依賴項

$ sudo dpkg -i {downloaded.deb file}

解決這些依賴項產生的問題

$ sudo apt-get -f install

● 安裝需要安裝的安裝包(Ubuntu 14.04)

你需要一個 64-bit 烏班圖環境,推薦使用 14.04 is recommended.

$ sudo apt-get install git-core gnupg flex bison gperf build-essential \zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \libgl1-mesa-dev libxml2-utils xsltproc unzip

Note: To use SELinux tools for policy analysis, also install the python-networkx package.

●安裝需要安裝的安裝包(Ubuntu 12.04)

你可能使用Ubuntu12.04來編譯安卓更舊的版本。Ubuntu 12.04
不支持主分支(master 最新版本和最近版本)

$ sudo apt-get install git gnupg flex bison gperf build-essential \zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \libgl1-mesa-dev g++-multilib mingw32 tofrodos \python-markdown libxml2-utils xsltproc zlib1g-dev:i386 $ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

●安裝要求安裝包(Ubuntu 10.04 – 11.10)

不再支持Ubuntu 10.04-11.10 版本的編譯,但是編譯AOSP以上的舊版本可能有用

$ sudo apt-get install git 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

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

設置MAC OS環境

由于該童鞋買不起 MAC OS ,所以就偷個懶暫時不寫這寫這部分了,將來有機會再寫~^(* ̄(oo) ̄)^

三、下載系統源碼

安卓資源樹被放在谷歌的Git 倉庫中。

安裝Repo

repo 是安卓環境下的命令行工具,對Git部分命令進行封裝,將 百多個git庫進行更新。
按照如下步驟進行安裝Repo.

1.確定你的主目錄(home)下有bin目錄,并且bin目錄變量在你的path環境變量中:

$ mkdir ~/bin $ PATH=~/bin:$PATH

2.下載Repo tool,并且確保它是可執行的。

$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo

For version 1.17, the SHA-1 checksum for repo is ddd79b6d5a7807e911b524cb223bc3544b661c28

For version 1.19, the SHA-1 checksum for repo is 92cbad8c880f697b58ed83e348d06619f8098e6c

For version 1.20, the SHA-1 checksum for repo is e197cb48ff4ddda4d11f23940d316e323b29671c

For version 1.21, the SHA-1 checksum for repo is b8bd1804f432ecf1bab730949c82b93b0fc5fede

For version 1.22, the SHA-1 checksum for repo is da0514e484f74648a890c0467d61ca415379f791
初始化一個Repo client

初始化 Repo 客戶端

當你安裝完Repo后,設置安卓源碼倉庫的客戶端:

1.創建一個存放安卓源碼的空目錄。如果你正在使用Mac OS,該目錄必須是一個區分大小寫的文件系統。你可以像下面一樣對安卓文件夾進行命名:

$ mkdir WORKING_DIRECTORY $ cd WORKING_DIRECTORY

2.配置你的用戶郵箱

$ git config --global user.name "Your Name" $ git config --global user.email "you@example.com"

3.運行 repo init 來下載最新版本的Repo。你必須為manifest文件指定一個URL,mainifest文件定義了你工作目錄中將要下載安卓源碼倉庫。

$ repo init -u https://android.googlesource.com/platform/manifest

如果下載的是一個分支而非主目錄(master),那么用-b.

$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1

如果提示無法連接到 gerrit.googlesource.com,可以編輯 ~/bin/repo,把 REPO_URL 一行替換成下面的:
REPO_URL = ‘https://gerrit-google.tuna.tsinghua.edu.cn/git-repo’ 該地址是清華大學提供的AOSP鏡像
清華大學TUNA鏡像https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

A successful initialization will end with a message stating that Repo is initialized in your working directory. Your client directory should now contain a .repo directory where files such as the manifest will be kept.

下載安卓源碼樹

為了向你的工作目錄下載安卓源碼,你需要運行

$ repo sync

總結

以上是生活随笔為你收集整理的一、安卓系统源码下载的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。