Configuración para el desarrollo de AOSP (2.3 - 8.0)

Esta página explica cómo configurar el desarrollo con Android 8.0 o versiones inferiores. Para aprender cómo compilar Android 9.0 y versiones posteriores, consulte Configuración para el desarrollo de AOSP .

Configurado para el desarrollo de AOSP (5.0 - 8.0)

Para Android 5.0 a 8.0, considere usar el Dockerfile incluido para facilitar la instalación de todos los paquetes necesarios.

Sistemas operativos

Android normalmente se construye con GNU Linux. También es posible construir Android en una máquina virtual en sistemas no compatibles como Mac OS X.

Google recomienda construir sobre GNU Linux. El sistema de compilación de Android normalmente ejecuta ART en la máquina de compilación para precompilar los archivos DEX del sistema. ART sólo puede ejecutarse en Linux, por lo que el sistema de compilación omite este paso de precompilación en sistemas operativos que no son Linux, lo que da como resultado una compilación de Android con rendimiento reducido.

Linux

  • Android 6.0 - Android 8.0: Ubuntu 14.04 (confiable)
  • Android 5.x: Ubuntu 12.0

MacOS X (Intel/x86)

  • Android 6.0 - AOSP 8.0: Mac OS X v10.10 (Yosemite) o posterior con Xcode 4.5.2 y herramientas de línea de comandos
  • Android 5.x: Mac OS X v10.8 (Mountain Lion) con Xcode 4.5.2 y herramientas de línea de comandos

JDK

Configurado para el desarrollo de AOSP (2.3 - 4.4)

Esta sección proporciona orientación sobre cómo configurar Android 2.3 a Android 4.4.

Sistemas operativos

Android normalmente se construye con GNU Linux. También es posible construir Android en una máquina virtual en sistemas no compatibles como Windows.

Google recomienda construir sobre GNU Linux. El sistema de compilación de Android normalmente ejecuta ART en la máquina de compilación para precompilar los archivos DEX del sistema. ART sólo puede ejecutarse en Linux, por lo que el sistema de compilación omite este paso de precompilación en sistemas operativos que no son Linux, lo que da como resultado una compilación de Android con rendimiento reducido.

Linux

  • Android 2.3.x - Android 4.4: Ubuntu 12.04 (Preciso)

MacOS X (Intel/x86)

  • Android 4.1.x - Android 4.4.x: Mac OS X v10.6 (Snow Leopard) o Mac OS X v10.7 (Lion) y Xcode 4.2 (Apple Developer Tools)
  • Android 2.3 - Android 4.0.x: Mac OS X v10.5 (Leopard) o Mac OS X v10.6 (Snow Leopard) y el SDK de Mac OS X v10.5

hacer GNU

Para Android 4.1.x a 4.4 use GNU make (gmake) 3.82 . Para Android 2.3 a 4.0.x, revierta desde gmake 3.82 para evitar errores de compilación.

Xcode y otros paquetes

Para Mac OS X v10.8 o inferior, instale Xcode desde el sitio para desarrolladores de Apple . Si aún no estás registrado como desarrollador de Apple, debes crear una ID de Apple para descargar.

Si usa Mac OS X v10.4, instale también Bison:

POSIXLY_CORRECT=1 sudo port install bison

Para MacPorts, emita:

POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg

Para Homebrew, emita:

brew install gmake libsdl git gnupg2

Revertir desde gmake 3.82

En Android 4.0.x y versiones anteriores, gmake 3.82 tiene un error que impide la compilación de Android. Puede instalar la versión 3.81 usando MacPorts con estos pasos:

  1. Edite /opt/local/etc/macports/sources.conf y agregue file:///Users/Shared/dports encima de la línea rsync .

  2. Cree el directorio dports :

    mkdir /Users/Shared/dports
    
  3. En el nuevo directorio dports , ejecute:

    svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
    
  4. Cree un índice de puerto para su nuevo repositorio local:

    portindex /Users/Shared/dports
    
  5. Instale la versión inferior de gmake:

    sudo port install gmake @3.81
    

JDK

JDK para Linux

El Proyecto de código abierto de Android (AOSP) viene con versiones prediseñadas de OpenJDK dentro de prebuilts/jdk/ , por lo que no se requiere instalación adicional.

Las versiones anteriores de Android requieren una instalación separada del JDK. En Ubuntu, use OpenJDK

Para Ubuntu 15.04 y superior

Ejecute lo siguiente:

sudo apt-get update
sudo apt-get install openjdk-8-jdk

Para Ubuntu LTS 14.04

No hay paquetes OpenJDK 8 compatibles disponibles para Ubuntu 14.04. Los paquetes Ubuntu 15.04 OpenJDK 8 se han utilizado correctamente con Ubuntu 14.04. Las versiones de paquetes superiores (por ejemplo, las de 15.10, 16.04) no funcionan en 14.04 siguiendo las siguientes instrucciones.

  1. Descargue los paquetes .deb para arquitectura de 64 bits desde old-releases.ubuntu.com

    • openjdk-8-jre-headless_8u45-b14-1_amd64.deb con SHA256 0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
    • openjdk-8-jre_8u45-b14-1_amd64.deb con SHA256 9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
    • openjdk-8-jdk_8u45-b14-1_amd64.deb con SHA256 6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
  2. Opcionalmente, confirme las sumas de verificación de los archivos descargados con la cadena SHA256 enumerada con cada paquete desde el paso 1. Por ejemplo, con la herramienta sha256sum :

    sha256sum {downloaded.deb file}
    
  3. Instale los paquetes:

    sudo apt-get update
    
  4. Ejecute dpkg para cada uno de los archivos .deb que descargó. Puede producir errores debido a dependencias faltantes:

    sudo dpkg -i {downloaded.deb file}
    
  5. Para corregir las dependencias que faltan:

    sudo apt-get -f install
    

(Opcional) Actualice la versión predeterminada de Java

Opcionalmente, para las versiones de Ubuntu mencionadas anteriormente, actualice la versión predeterminada de Java ejecutando:

sudo update-alternatives --config java
sudo update-alternatives --config javac

Instale los paquetes necesarios para Ubuntu 14.04

Ejecute los siguientes comandos para instalar los paquetes necesarios para Ubuntu 14.04:

$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip$

Instale los paquetes necesarios para Ubuntu 12.04

Ejecute los siguientes comandos para instalar los paquetes necesarios para Ubuntu 12.04:

$ sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386

sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so