Necesitamos como requisito: JDK 5.0, actualización 12 ó superior. Java 6 no está soportado debido a incompatibilidades con @Override.
Debian Sid proporciona todos los paquetes que necesitamos, excepto JDK 5.0. Lo podríamos instalar usando las fuentes, pero en su lugar lo instalaremos desde los repositorios de Debian Stable (Lenny):
AÑADIR LOS REPOSITORIOS DE DEBIAN STABLE (LENNY)
#echo "deb http://ftp.debian.org/debian/ stable main contrib non-free" >> /etc/apt/sources.list
#aptitude update
El paquete sun-java5-jdk está ahora disponible.
INSTALLAR LOS PAQUETES QUE NECESITAMOS:
#aptitude install git-core gnupg sun-java5-jdk flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
SELECCIONAR LA VERSIÓN CORRECTA DE JAVA:
$file /etc/alternatives/java*
# Para saber qué ficheros de alternativas tenemos que actualizar.#update-alternatives --config java
#update-alternatives --config java_vm
#update-alternatives --config javaws
También instalaremos valgrind, es una herramienta que nos ayudará a encontrar memoria no liberada, corrupción en la pila, desbordamiento de los límites de vectores, etc.
#aptitude install valgrind
Los proyectos de Android se almacenan en repositorios Git. Han desarrollado también una herramienta llamada REPO para facilitar el trabajo con repositorios basados en git.
INSTALANDO REPO
Puedes instalar la herramienta repo en cualquier lugar en el path. Elegimos el directorio bin en nuestro directorio home:
$cd ~
$mkdir bin
$export PATH=$PATH:~/bin
$curl https://android.git.kernel.org/repo >~/bin/repo
$chmod a+x ~/bin/repo
DESCARGAR EL CÓDIGO FUENTE DE ANDROID:
Crear un directorio vacío para almacenar nuestros ficheros de trabajo:
$mkdir mydroid
$cd mydroid
# Ejecutar repo init para descargar la última versión de Android con los parches más recientes. Debes especificar la URL del "manifiesto":
$repo init -u git://android.git.kernel.org/platform/manifest.git
NOTA: usando la opción -b podemos elegir qué versión de android instalar:
$repo init -u git://android.git.kernel.org/platform/manifest.git -b eclair
Para bajar los ficheros al directorio de trabajo desde los repositorios, según se especifica en el manifiesto por defecto, ejecuta:
$repo sync
NOTA: el directorio mydroid alcanza un tamaño de 3.6 gigas.
COMPILANDO ANDROID
Simplemente ejecuta, en tu directorio de android, el comando make:
$cd mydroid
$make
Tardará un tiempo en terminar.
La lista de ficheros instalados aparece en este fichero:
out/target/product/generic/installed-files.txt
También se crean algunas imágenes en ese mismo directorio: (system.img userdata.img ramdisk.img)
mydroid$ ls out/target/product/generic/ android-info.txt data obj ramdisk.img symbols system.img clean_steps.mk installed-files.txt previous_build_config.mk root system userdata.img
Hemos compilado el código fuente de android, ahora vamos a testearlo:
EMULADOR DE ANDROID
Ejecutaremos el Emulador de Android que forma parte del SDK de Android
http://developer.android.com/guide/developing/tools/emulator.html
Descargar el SDK de Android
http://developer.android.com/sdk/index.html
Instalar el SDK de Android
http://developer.android.com/sdk/installing.html
Descomprimimos el SDK y añadimos el directorio tools a la variable de entorno PATH:
$tar xvzf android-sdk_r05-linux_86.tgz
$export PATH=$PATH:~/android-sdk-linux_86/tools
En lugar de crear un dispositivo virtual de android, vamos a utilizar una variable de entorno para indicar la localización de nuestras imágenes:
EJECUTANDO EL EMULADOR DE ANDROID
$emulator -help
# Muestra la ayuda.$export ANDROID_PRODUCT_OUT=/path/to/mydroid/out/target/product/generic/
# Variable de entorno indicando el path de las imágenes de Android. Creamos una imágen SD para simular una tarjeta SD:
$cd mydroid/out/target/product/generic/
$mksdcard -l SD 100M sdcard.img
Ejecutamos el emulador:
$emulator -verbose
Si queremos mostrar más información para debuguear:
$emulator -show-kernel -verbose
CONECTAR CON EL EMULADOR USANDO LA HERRAMIENTA ADB (ANDROID DEBUG BRIDGE)
La herramienta adb forma parte del SDK de Android.
Ejecutamos en una consola:
$adb devices
Mostrará los dispositivos disponibles en tu sistema:
List of devices attached emulator-5554 device
We can now connect to the device:
$adb shell
PUEDE QUE TAMBIÉN LE INTERESE
Cómo COMPILAR el KERNEL de LINUX para el EMULADOR de ANDROID (versión ECLAIR)
REFERENCIA:
http://source.android.com/download
TRADUCIDO DE:
Building Android in Debian Sid
Llevaba tiempo buscando algo tan bien explicado. Gracias!
ResponderEliminarGracias por el comentario :)
ResponderEliminar