Прежде чем загружать и собирать исходный код Android, убедитесь, что ваша система соответствует следующим требованиям, а затем ознакомьтесь с инструкциями по установке для каждой операционной системы в разделе «Установка среды сборки ».
Требования к оборудованию
Ваша рабочая станция разработки должна соответствовать или превосходить следующие требования к оборудованию:
- Для Android 2.3.x (Gingerbread) и более поздних версий, включая основную ветку, требуется 64-битная среда. Вы можете скомпилировать более старые версии в 32-битных системах.
- Не менее 250 ГБ свободного дискового пространства для проверки кода и дополнительные 150 ГБ для его сборки. Если вы проводите несколько сборок, вам понадобится дополнительное пространство.
- Google рекомендует иметь как минимум 64 ГБ ОЗУ и не тестирует меньшее количество. Меньшие суммы приводят к уничтожению сборок OOM.
По состоянию на июнь 2021 года Google использует 72-ядерные машины с 64 ГБ внутренней оперативной памяти, полная сборка которых занимает около 40 минут (и всего несколько минут для инкрементных сборок, в зависимости от того, какие именно файлы были изменены). Напротив, 6-ядерная машина с аналогичным объемом оперативной памяти занимает 3 часа.
Требования к программному обеспечению
main
ветка AOSP традиционно разрабатывается и тестируется на выпусках Ubuntu Long Term Support (LTS), но могут использоваться и другие дистрибутивы. Дополнительные необходимые пакеты и команды для их установки см. в разделе «Установка среды сборки» .
На вашей рабочей станции должно быть установлено программное обеспечение, указанное ниже. Эти требования применяются к main
ветке AOSP. Для версий Android от 8.0 (Oreo или O) до 5.0 (Lollipop или L) рассмотрите возможность использования прилагаемого файла Dockerfile , чтобы упростить установку всех необходимых пакетов. Для ручного метода см. раздел «Поддержка старых версий» .
Операционные системы
Если вы разрабатываете main
ветку AOSP, используйте Ubuntu 18.04 или новее.
ЯДК
main
ветка Android в AOSP поставляется с предварительно созданной версией OpenJDK, поэтому дополнительная установка не требуется.
Более старые версии Android требуют отдельной установки JDK. В Ubuntu используйте OpenJDK.
Ключевые пакеты
Основная ветка AOSP поставляется с предварительно созданной версией Make, поэтому дополнительная установка не требуется. Git устанавливается аналогичным образом в рамках процесса создания среды сборки .
Убедитесь, что в вашей системе установлен Python 3 .
Двоичные файлы устройств
Загрузите предварительные версии, заводские образы, драйверы, обновления по беспроводной сети (OTA) и другие объекты ниже. Подробности см. в разделе Получение проприетарных двоичных файлов .
- Предварительный просмотр двоичных файлов (BLOB-объектов) для разработки
main
ветки AOSP - Заводские образы для поддерживаемых устройств с тегированными ветками выпуска AOSP
- Двоичные файлы поддержки оборудования для устройств, на которых работают помеченные ветки выпуска AOSP.
Создание набора инструментов
Android 8.0 и более поздних версий поддерживает сборку только с помощью clang/LLVM, в том числе для инструментов хоста. Вместо этого в более старых версиях использовался GCC. В обоих случаях Android поддерживает сборку только с предварительно собранным компилятором, зарегистрированным в разделе prebuilts/
.