AOSP: Persiapan Membuat ROM
Sebelum kita mendownload dan membuat Android dari source code, pastikan bahwa system yang kita gunakan memenuhi persyaratan berikut.
Kebutuhan Hardware
Komputer yang kita gunakan minimal harus memenuhi persyaratan berikut,
- Untuk Gingerbread (2.3.x) ke atas, kita membutuhkan sistem 64 bit.
- Paling tidak 100 Gbyte untuk checkout, 150 GB untuk sebuah build, 200GB atau lebih untuk banyak build. Jika kita menggunakan ccache, maka kita akan membutuhkan space yang lebih banyak lagi.
Jika kita menjalankan Linux di mesin virtual, kita akan membutuhkan paling tidak 16 GB RAM / swap. Sekedar catatan, penulis memperoleh error “Out of Memory” dan gagal mengcompile Android versi terbaru 7.1.1 di mesin dengan RAM 2GB swap 16GB.
Kebutuhan Software
Master branch dari Android Open Source Project (AOSP) biasanya di developed dan di test pada release Ubuntu Long Term Support (LTS). Berikut adalah daftar sistem operasi yang digunakan untuk build AOSP.
Sistem Operasi
Android biasanya di built dengan sistem operasi GNU/Linux atau Mac OS.
GNU/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) atau yang lebih baru dengan Xcode 4.5.2 dan Command Line Tools
- Android 5.x (Lollipop): Mac OS v10.8 (Mountain Lion) dengan Xcode 4.5.2 dan Command Line Tools
- Android 4.1.x-4.3.x (Jelly Bean) - Android 4.4.x (KitKat): Mac OS v10.6 (Snow Leopard) atau Mac OS X v10.7 (Lion) dan Xcode 4.2 (Apple's Developer Tools)
- Android 1.5 (Cupcake) - Android 4.0.x (Ice Cream Sandwich): Mac OS v10.5 (Leopard) atau Mac OS X v10.6 (Snow Leopard) dan the Mac OS X v10.5 SDK
Java Development Kit (JDK)
- master branch dari Android di AOSP: Ubuntu - OpenJDK 8, Mac OS - jdk 8u45 atau yang lebih baru.
- 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
Paket program yang penting
- Python 2.6 -- 2.7 dari python.org
- GNU Make 3.81 -- 3.82 dari gnu.org; Android 3.2.x (Honeycomb) dan yang lebih lama perlu mundur dari make 3.82 untuk mengatasi error saat build. Pada Ubuntu >16.04 akan di instalasi make 4.1.
- Git 1.7 atau yang lebih baru dari git-scm.com.
Binary untuk Nexus & Pixel.
Untuk mereka yang menggunakan Nexus & Pixel dapat mendownload preview, factory image, drivers, dan update over-the-air (OTA).
- https://developers.google.com/android/blobs-preview - Preview binaries (blobs) – untuk AOSP master branch development
- https://developers.google.com/android/nexus/images - Factory image – untuk supported device yang menjalankan AOSP release branch.
- https://developers.google.com/android/nexus/drivers - Binary hardware support file – untuk device yang menjalankan AOSP release branch.
- https://developers.google.com/android/nexus/ota - OTA image – untuk update secara manual Nexus device over the air (OTA).