Avant de télécharger et de compiler la branche main
de la source Android, assurez-vous que votre matériel répond aux exigences requises et que le logiciel requis est correctement installé. Vous devez également connaître les termes suivants:
- Git
- Git est un système de contrôle des versions distribué sans frais et Open Source. Android utilise Git pour les opérations locales telles que les embranchements, les commits, les différences et les modifications. Pour obtenir de l'aide sur l'apprentissage de Git, consultez la documentation Git.
- Dépôt
- Repo est un wrapper Python pour Git qui simplifie l'exécution d'opérations complexes sur plusieurs dépôts Git. Le dépôt ne remplace pas Git pour toutes les opérations de contrôle des versions. Il facilite simplement la réalisation d'opérations Git complexes. Le dépôt utilise des fichiers manifestes pour agréger des projets Git dans le superprojet Android.
- Fichier manifeste
- Un fichier manifeste est un fichier XML qui spécifie l'emplacement des différents projets Git de la source Android dans une arborescence source AOSP.
Configuration matérielle requise
Votre poste de travail de développement doit disposer de la configuration matérielle suivante ou la dépasser:
Un système 64 bits.
Au moins 400 Go d'espace disque libre pour extraire et compiler le code (250 Go pour l'extraction + 150 Go pour la compilation)
Au moins 64 Go de RAM Google utilise des machines à 72 cœurs avec 64 Go de RAM pour créer Android. Avec cette configuration matérielle, il faut environ 40 minutes pour une version complète d'Android et seulement quelques minutes pour la compilation incrémentielle d'Android. En revanche, il faut environ six heures pour un build complet sur une machine à 6 cœurs disposant de 64 Go de RAM.
Configuration requise pour le système d'exploitation
Votre poste de travail de développement doit exécuter une distribution Linux 64 bits avec la bibliothèque GNU C (glibc) 2.17 ou une version ultérieure.
Installer les packages requis
Pour compiler Android 11 ou version ultérieure, vous devez utiliser Ubuntu 18.04 ou version ultérieure. Pour installer les packages requis pour Ubuntu 18.04 ou version ultérieure, exécutez la commande suivante:
sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev libc6-dev-i386 x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig
Parmi les packages installés, cette commande installe Git, qui permet de télécharger la source AOSP.
Installer le logiciel requis
Pour pouvoir utiliser AOSP, vous devez disposer d'installations OpenJDK, Make, Python 3 et Repo. La branche principale AOSP d'Android est fournie avec des versions prédéfinies d'OpenJDK, de Make et de Python 3. Aucune étape d'installation supplémentaire n'est donc requise. La section suivante explique comment installer Repo.
Installer Repo
Pour installer Repo, procédez comme suit:
Téléchargez les informations actuelles du package:
sudo apt-get update
Exécutez la commande suivante pour installer le lanceur de dépôts:
sudo apt-get install repo
Le lanceur de dépôts fournit un script Python qui initialise un processus de récupération et télécharge l'outil de dépôt complet.
Si l'opération réussit, passez à l'étape 4.
(Facultatif) Installez manuellement Repo à l'aide des séries de commandes suivantes:
export REPO=$(mktemp /tmp/repo.XXXXXXXXX) curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo gpg --recv-keys 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65 curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo
Les trois premières commandes permettent de configurer un fichier temporaire, de télécharger le dépôt dans le fichier et de vérifier que la clé fournie correspond à la clé requise. Si ces commandes aboutissent, la commande finale installe le lanceur de dépôts.
Vérifiez la version du lanceur de dépôts:
repo version
Le résultat doit indiquer une version 2.5 ou ultérieure, par exemple:
repo launcher version 2.40
Définir un autre répertoire de sortie
Par défaut, le résultat de chaque compilation est stocké dans le sous-répertoire out/
de l'arborescence source correspondante. Vous pouvez remplacer ce répertoire en exportant la variable d'environnement OUT_DIR
. Par exemple, si vous souhaitez stocker la sortie sur un autre lecteur, vous pouvez pointer OUT_DIR
vers ce lecteur:
export OUT_DIR=my_other_drive
Et maintenant ?
- Pour télécharger le code source, passez à la section Télécharger la source Android.
- Pour obtenir de l'aide sur l'apprentissage de Git, consultez la documentation Git.
- Pour obtenir de la documentation supplémentaire sur Repo, consultez le fichier README du dépôt.
- Pour obtenir la liste de toutes les commandes Repo, consultez la documentation de référence sur les commandes Repo.