Antes de fazer o download e criar a ramificação main
da origem do Android, confira se
o hardware atende aos requisitos e se o software necessário
está instalado corretamente. Você também precisa conhecer estes termos:
- Git
- O Git é um sistema de controle de versões distribuído, de código aberto e gratuito. O Android usa o Git para operações locais, como ramificações, commits, diferenças e edições. Para aprender a usar o Git, consulte a documentação relevante (em inglês).
- Repo
- Repo é um wrapper Python baseado no Git que simplifica a execução de operações complexas em vários repositórios Git. O Repo não substitui o Git para todas as operações de controle de versões, apenas facilita operações complexas do Git. Ele usa arquivos de manifesto para agregar projetos do Git no superprojeto do Android.
- Arquivo de manifesto
- Um arquivo de manifesto é um arquivo XML que especifica onde os vários projetos Git na origem do Android são posicionados na árvore de origem do AOSP.
Atender aos requisitos de hardware
Sua estação de trabalho de desenvolvimento precisa atender ou exceder estes requisitos de hardware:
Um sistema x86 de 64 bits.
Pelo menos 400 GB de espaço livre em disco para verificar e criar o código (250 GB para verificar + 150 GB para criar).
Mínimo de 64 GB de RAM. O Google usa máquinas de 72 núcleos com 64 GB de RAM para criar para o Android. Com essa configuração de hardware, é necessário aproximadamente 40 minutos para um build completo do Android e apenas alguns minutos para um build incremental do Android. Por outro lado, leva aproximadamente 6 horas para um build completo com uma máquina de 6 núcleos com 64 GB de RAM.
Atender aos requisitos do sistema operacional
Sua estação de trabalho de desenvolvimento precisa executar uma distribuição de Linux de 64 bits com a biblioteca GNU C (glibc) 2.17 ou mais recente.
Instalar os pacotes necessários
Para criar para o Android 11 ou mais recente, você precisa usar o Ubuntu 18.04 ou mais recente. Para instalar os pacotes necessários para Ubuntu 18.04 ou mais recente, execute este comando:
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
Dentre os pacotes instalados, este comando instala o Git, que é utilizado para fazer o download da origem AOSP.
Instalar o software necessário
Antes de poder trabalhar com AOSP, você precisa instalar o OpenJDK, Make, Python 3 e Repo. A principal ramificação AOSP do Android vem com versões pré-criadas do OpenJDK, Make e Python 3. Etapas extra de instalação não são necessárias. A seção abaixo explica como instalar o Repo.
Instalar o Repo
Siga estas etapas para instalar o Repo:
Faça o download das informações do pacote atual:
sudo apt-get update
Execute o comando abaixo para instalar o inicializador do Repo:
sudo apt-get install repo
O inicializador do Repo fornece um script Python que faz o download e a instalação da ferramenta do Repo completa.
Se isso der certo, pule para a etapa 4.
(opcional) Instale manualmente o Repo usando estes comandos:
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
Os três primeiros comandos configuram um arquivo temporário, fazem o download do Repo para o arquivo e verificam se a chave fornecida corresponde à chave necessária. Se os comandos tiverem sucesso, o comando final vai instalar o inicializador do Repo.
Confira a versão do inicializador do Repo:
repo version
A saída precisa indicar a versão 2.4 ou mais recente. Por exemplo:
repo launcher version 2.45
Definir um diretório de saída alternativo
Por padrão, a saída de cada build é armazenada no subdiretório out/
da árvore de origem correspondente. É possível mudar esse diretório exportando
a variável de ambiente OUT_DIR
. Por exemplo, se você quiser armazenar a saída
em uma unidade diferente, aponte OUT_DIR
para essa unidade:
export OUT_DIR=my_other_drive
Qual é a próxima etapa?
- Para baixar o código-fonte, acesse Download da origem do Android.
- Para aprender a usar o Git, consulte a documentação relevante (link em inglês).
- Para conferir a documentação adicional do Repo, consulte o README do Repo (link em inglês).
- Para uma lista de todos os comandos do Repo, consulte a referência de comandos do Repo.