| <html devsite><head> |
| <title>要求</title> |
| <meta name="project_path" value="/_project.yaml"/> |
| <meta name="book_path" value="/_book.yaml"/> |
| </head> |
| <body> |
| <!-- |
| Copyright 2017 The Android Open Source Project |
| |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <p>下载和编译 Android 源代码之前,请先确保您的系统符合以下要求。然后,请参阅<a href="initializing.html">构建编译环境</a>,查看适用于相应操作系统的安装说明。</p> |
| |
| <h2 id="hardware-requirements">硬件要求</h2> |
| |
| <p>您的开发工作站必须达到或超出以下硬件要求:</p> |
| |
| <ul> |
| |
| <li>如果是 Gingerbread (2.3.x) 及更高版本(包括 master 分支),需要使用 64 位环境。如果是较低的版本,则可以在 32 位系统中进行编译。 |
| </li> |
| |
| <li>如果是校验代码,至少需要 100GB 可用磁盘空间;如果要进行编译,则还需要 150GB。如果要进行多次编译或使用 ccache,则需要更多空间。<p></p> |
| </li> |
| |
| <li>如果您在虚拟机中运行 Linux,则至少需要 16GB 的 RAM/交换空间。 |
| </li> |
| |
| </ul> |
| |
| <h2 id="software-requirements">软件要求</h2> |
| |
| <p><a href="https://android.googlesource.com/">Android 开源项目 (AOSP)</a> <code>master</code> 分支历来都是在 Ubuntu Long Term Support (LTS) 版本中进行开发和测试,但您也可以使用其他 Ubuntu 分发版本。要查看建议使用的版本,请参阅下面的列表。</p> |
| |
| <p>您的工作站必须具有下面列出的软件。要查看所需的其他软件包以及用于安装这些软件包的命令,请参阅<a href="initializing.html">构建编译环境</a>。</p> |
| |
| <h3 id="latest-version">操作系统和 JDK</h3> |
| |
| <p>如果您要针对 AOSP <code>master</code> 分支进行开发,请使用下列操作系统之一:Ubuntu 14.04 (Trusty)/Mac OS v10.10 (Yosemite) 或更高版本(具有 Xcode 4.5.2 和命令行工具)。</p> |
| |
| <p>对于 Java 开发套件 (JDK),需要注意的是 AOSP 中 Android 的 <code>master</code> 分支带有预编译版本的 OpenJDK;因此无需另外进行安装。较低的版本则需要单独进行安装。</p> |
| |
| <p>请参阅<a href="#older-versions">较低 Android 版本的软件包</a>。 |
| |
| </p><h3 id="packages">主要软件包</h3> |
| <ul> |
| <li><a href="http://www.python.org/download/">python.org</a> 中提供的 Python 2.6 - 2.7</li> |
| <li><a href="http://ftp.gnu.org/gnu/make/">gnu.org</a> 中提供的 GNU Make 3.81 - 3.82 |
| </li><li><a href="http://git-scm.com/download">git-scm.com</a> 中提供的 Git 1.7 或更高版本</li> |
| </ul> |
| |
| <h3 id="binaries">设备二进制文件</h3> |
| <p>下载预览、出厂映像、驱动程序、无线下载 (OTA) 更新和下列其他 Blob。如需更多详细信息,请参阅<a href="/setup/building.html#obtaining-proprietary-binaries">下载专有二进制文件</a>。</p> |
| <ul> |
| <li><a href="https://developers.google.com/android/blobs-preview">预览二进制文件 (Blob)</a> - 用于 AOSP <code>master</code> 分支开发</li> |
| <li><a href="https://developers.google.com/android/images">出厂映像</a> - 针对运行带标记的 AOSP 版本分支的受支持设备</li> |
| <li><a href="https://developers.google.com/android/drivers">硬件支持二进制文件</a> - 针对运行带标记的 AOSP 版本分支的设备</li> |
| </ul> |
| |
| <h3 id="toolchain">编译工具链</h3> |
| |
| <p>Android 8.0 及更高版本仅支持使用 <a href="https://developer.android.com/ndk/guides/standalone_toolchain.html#working_with_clang">Clang/LLVM</a> 来编译 Android 平台。您可以加入 <a href="https://groups.google.com/forum/#!forum/android-llvm">android-llvm</a> 网上论坛来提出问题并获取帮助。在 <a href="https://github.com/android-ndk/ndk">NDK GitHub</a> 上报告 NDK/编译器问题。</p> |
| |
| <p>对于<a href="https://developer.android.com/ndk/guides/index.html">原生开发工具包 (NDK)</a> 和旧版内核,您也可以使用 AOSP 主分支中包含的 GCC 4.9(在 <code>prebuilts/</code> 下)。</p> |
| |
| <h3 id="older-versions">较低 Android 版本的软件包</h3> |
| |
| <p>以下部分提供了较低 Android 版本的相关操作系统和 JDK 软件包。</p> |
| |
| <h4 id="operating-system">操作系统</h4> |
| |
| <p>Android 通常是在 GNU/Linux 或 Mac OS 操作系统中进行编译。您也可以使用虚拟机在不支持的系统(例如 Windows)中编译 Android。<br /> |
| |
| </p><h5 id="linux">GNU/Linux</h5> |
| |
| <ul> |
| <li>Android 6.0 (Marshmallow) - AOSP master:Ubuntu 14.04 (Trusty)</li> |
| <li>Android 2.3.x (Gingerbread) - Android 5.x (Lollipop):Ubuntu 12.04 (Precise)</li> |
| <li>Android 1.5 (Cupcake) - Android 2.2.x (Froyo):Ubuntu 10.04 (Lucid)</li> |
| </ul> |
| |
| <h5 id="mac">Mac OS (Intel/x86)</h5> |
| |
| <ul> |
| <li>Android 6.0 (Marshmallow) - AOSP master:Mac OS v10.10 (Yosemite) 或更高版本,具有 Xcode 4.5.2 和命令行工具</li> |
| <li>Android 5.x (Lollipop):Mac OS v10.8 (Mountain Lion),具有 Xcode 4.5.2 和命令行工具</li> |
| <li>Android 4.1.x-4.3.x (Jelly Bean) - Android 4.4.x (KitKat):Mac OS v10.6 (Snow Leopard) 或 Mac OS X v10.7 (Lion),以及 Xcode 4.2(Apple 的开发者工具)</li> |
| <li>Android 1.5 (Cupcake) - Android 4.0.x (Ice Cream Sandwich):Mac OS v10.5 (Leopard) 或 Mac OS X v10.6 (Snow Leopard),以及 Mac OS X v10.5 SDK</li> |
| </ul> |
| |
| <h4 id="jdk">JDK</h4> |
| |
| <p>有关较低 Android 版本的预编译路径和安装说明,请参阅<a href="initializing.html#installing-the-jdk">安装 JDK</a>。</p> |
| <ul> |
| <li>Android 7.0 (Nougat) - Android 8.0 (O):Ubuntu - <a href="http://openjdk.java.net/install/">OpenJDK 8</a>;Mac OS - <a href="http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html#jdk-8u45-oth-JPR">jdk 8u45 或更高版本</a></li> |
| <li>Android 5.x (Lollipop) - Android 6.0 (Marshmallow):Ubuntu - <a href="http://openjdk.java.net/install/">OpenJDK 7</a>;Mac OS - <a href="https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jdk-7u71-oth-JPR">jdk-7u71-macosx-x64.dmg</a></li> |
| <li>Android 2.3.x (Gingerbread) - Android 4.4.x (KitKat):Ubuntu - <a href="http://www.oracle.com/technetwork/java/javase/archive-139210.html">Java JDK 6</a>;Mac OS - <a href="http://support.apple.com/kb/dl1572">Java JDK 6</a></li> |
| <li>Android 1.5 (Cupcake) - Android 2.2.x (Froyo):Ubuntu - <a href="http://www.oracle.com/technetwork/java/javase/archive-139210.html">Java JDK 5</a></li> |
| </ul> |
| |
| <h4 id="make">品牌</h4> |
| <p>Android 4.0.x (Ice Cream Sandwich) 及更低版本需要<a href="initializing.html#reverting-from-make-382">将 make 3.82 还原到较低版本</a>,以避免出现编译错误</p>。 |
| |
| </body></html> |