Сборка последних старых релизов (>= 5.0 Lollipop)
Для версий Android 8.0 (Oreo или O) — 5.0 (Lollipop или L) рассмотрите возможность использования включенного Dockerfile , чтобы упростить установку всех необходимых пакетов.
Сборка действительно старых релизов (<= 4.4 KitKat)
Операционные системы
Android обычно создается с помощью GNU/Linux. Также можно собрать Android на виртуальной машине в неподдерживаемых системах, таких как Windows.
Мы рекомендуем использовать GNU/Linux. Система сборки Android обычно запускает ART на машине сборки для предварительной компиляции системных файлов DEX. ART может работать только в Linux, поэтому система сборки пропускает этот этап предварительной компиляции в операционных системах, отличных от Linux, что приводит к снижению производительности сборки Android.
ГНУ/Линукс
- Android 6.0 (Marshmallow) — мастер AOSP: 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 X (Intel/x86)
- Android 6.0 (Marshmallow) — мастер AOSP: Mac OS X v10.10 (Yosemite) или выше с Xcode 4.5.2 и инструментами командной строки
- Android 5.x (Lollipop): Mac OS X v10.8 (Mountain Lion) с Xcode 4.5.2 и инструментами командной строки
- Android 4.1.x (Jelly Bean) — Android 4.4.x (KitKat): Mac OS X v10.6 (Snow Leopard) или Mac OS X v10.7 (Lion) и Xcode 4.2 (Apple Developer Tools)
- Android 1.5 (Cupcake) — Android 4.0.x (Ice Cream Sandwich): Mac OS X v10.5 (Leopard) или Mac OS X v10.6 (Snow Leopard) и Mac OS X v10.5 SDK
GNU сделать
Для версий ниже основной ветки AOSP до Android 4.1.x (Jelly Bean) используйте GNU make (gmake) 3.82 . Для Android 4.0.x (Ice Cream Sandwich) и более ранних версий откатитесь от gmake 3.82 , чтобы избежать ошибок сборки.
Xcode и другие пакеты
Для более ранних версий Mac OS X v10.8 или ниже установите Xcode с сайта разработчиков Apple . Если вы еще не зарегистрированы в качестве разработчика Apple, для загрузки необходимо создать Apple ID.
Если вы используете Mac OS X v10.4, также установите Bison:
POSIXLY_CORRECT=1 sudo port install bison
Для MacPorts выполните:
POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg
Для доморощенного выпуска:
brew install gmake libsdl git gnupg2
Возврат с gmake 3.82
В Android 4.0.x (Ice Cream Sandwich) и более ранних версиях gmake 3.82 есть ошибка, которая препятствует сборке Android. Вы можете установить версию 3.81 с помощью MacPorts, выполнив следующие действия:
- Отредактируйте
/opt/local/etc/macports/sources.conf
и добавьте эту строку:file:///Users/Shared/dports
над строкой rsync. Затем создайте этот каталог:mkdir /Users/Shared/dports
- В новом
dports
запустите:svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
- Создайте индекс порта для вашего нового локального репозитория:
portindex /Users/Shared/dports
- Установите старую версию gmake:
sudo port install gmake @3.81
JDK
Поддерживаемые версии
- Android 7.0 (нуга) – Android 8.0 (Oreo):
- Ubuntu: OpenJDK 8
- Mac OS X: JDK 8u45 или выше
- Android 5.x (леденец) – Android 6.0 (зефир):
- Убунту: ОпенДК 7
- Mac OS X: jdk-7u71-macosx-x64.dmg
- Android 2.3.x (Gingerbread) – Android 4.4.x (KitKat):
- Ubuntu: Java JDK 6
- Mac OS X: Java JDK 6
- Android 1.5 (Cupcake) – Android 2.2.x (Froyo):
- Ubuntu: Java JDK 5
JDK для Linux
Основная master
Android в проекте с открытым исходным кодом Android (AOSP) поставляется с предварительно собранными версиями OpenJDK ниже prebuilts/jdk/
, поэтому дополнительная установка не требуется.
Более низкие версии Android требуют отдельной установки JDK. В Ubuntu используйте OpenJDK .
Для Ubuntu 15.04 и выше
Запустите следующее:
sudo apt-get update
sudo apt-get install openjdk-8-jdk
Для Убунту ЛТС 14.04
Нет доступных поддерживаемых пакетов OpenJDK 8 для Ubuntu 14.04. Пакеты Ubuntu 15.04 OpenJDK 8 успешно использовались с Ubuntu 14.04. Более высокие версии пакетов (например, для 15.10, 16.04) не работают на 14.04, следуя приведенным ниже инструкциям.
- Загрузите пакеты
.deb
для 64-битной архитектуры с сайта old-releases.ubuntu.com :- openjdk-8-jre-безголовый_8u45-b14-1_amd64.deb
с SHA2560f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
- openjdk-8-jre_8u45-b14-1_amd64.deb
с SHA2569ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
- openjdk-8-jdk_8u45-b14-1_amd64.deb
с SHA2566e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
- openjdk-8-jre-безголовый_8u45-b14-1_amd64.deb
- При необходимости проверьте контрольные суммы загруженных файлов по строке SHA256, указанной для каждого пакета выше. Например, с помощью инструмента
sha256sum
:sha256sum {downloaded.deb file}
- Установите пакеты:
sudo apt-get update
Запуститеdpkg
для каждого загруженного файла.deb
. Это может привести к ошибкам из-за отсутствующих зависимостей:sudo dpkg -i {downloaded.deb file}
Чтобы исправить отсутствующие зависимости:sudo apt-get -f install
(Необязательно) Обновите версию Java по умолчанию.
При необходимости для версий Ubuntu, указанных выше, обновите версию Java по умолчанию, выполнив:
sudo update-alternatives --config java
sudo update-alternatives --config javac