apu314
14/03/13, 13:54:42
Bueno compañeros, hoy os traigo un tutorial que he posteado en el vlog del Proyecto Android Libre. Con esto aprenderemos a preparar nuestro Ubuntu 12.04 Precise Pangolin correctamente para así compilar roms desde las sources.
¡Empezamos!
Configurar Ubuntu 12.04 para compilar Roms desde sources
y aprender a compilar CM-10.1 para un terminal soportado
#¿Qué necesitamos?
Ubuntu 12.04 de 64 bits (tu procesador debe aceptar SO de 64 bits)
#¡Vamos a ello!
1.Debemos tener instalada la versión corecta de JDK para poder compilar android. Para ello primero desisntalaremos las versiones de java que no necesitemos ejecutando el siguiente comando en el terminal de Ubuntu:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
2.Instalamos la versión de java JDK que necesitamos, para ello primero instalamos el repositorio
sudo add-apt-repository ppa:webupd8team/java
y luego instalamos el JDK escribiendo lo siguiente, de nuevo, en el terminal de ubuntu:
sudo apt-get update && sudo apt-get install oracle-java6-installer
3.Chequeamos que la versión que hemos instalado es la correcta con el siguiente comando:
java -version
Nos debe salir algo así:
java version "1.6.0_43"
Java(TM) SE Runtime Environment (build 1.6.0_43-b01)
Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01, mixed mode)
4.Instalmos los paquetes necesarios para compilar:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
5.Instalar el Android SDK
Antes que nada debemos crear la carpeta donde se instalará el Android SDK. Para ello tecleamos lo siguiente:
cd ~ mkdir android
cd android
mkdir sdk
Tememos que descargar el Android SDK de ¡AQUÍ! (http://developer.android.com/sdk/index.html)
Luego, lo extraemos en ~/android/sdk
Añadimos el SDK al PATH con el siguiente comando:
sudo gedit ~/.bashrc
Se nos abre una ventana del editor de textos y, abajo del todo, escribimos lo siguiente:
#Android PATH
export PATH=$PATH:~/android/sdk
export PATH=$PATH:~/android/sdk/platform-tools
export PATH=${PATH}:~/android/sdk/tools
Ahora editaremos el Path para el USB:
sudo gedit /etc/udev/rules.d/51-android.rules
Se nos abrirá una ventana del editor de textos y dentro pegaremos las siguientes líneas:
# adb protocol on passion (Nexus One) SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", MODE="0600", OWNER="<username>"
# fastboot protocol on passion (Nexus One)
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="<username>"
# adb protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", MODE="0600", OWNER="<username>"
# fastboot protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", MODE="0600", OWNER="<username>"
# adb protocol on stingray/wingray (Xoom)
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="70a9", MODE="0600", OWNER="<username>"
# fastboot protocol on stingray/wingray (Xoom)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="708c", MODE="0600", OWNER="<username>"
# adb protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0600", OWNER="<username>"
# fastboot protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e30", MODE="0600", OWNER="<username>"
# adb protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d101", MODE="0600", OWNER="<username>"
# fastboot protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d022", MODE="0600", OWNER="<username>"
# usbboot protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d00f", MODE="0600", OWNER="<username>"
# usbboot protocol on panda (PandaBoard ES)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d010", MODE="0600", OWNER="<username>"
# adb protocol on grouper/tilapia (Nexus 7)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e42", MODE="0600", OWNER="<username>"
# fastboot protocol on grouper/tilapia (Nexus 7)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0600", OWNER="<username>"
# adb protocol on manta (Nexus 10)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee2", MODE="0600", OWNER="<username>"
# fastboot protocol on manta (Nexus 10)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee0", MODE="0600", OWNER="<username>"
Cambiar donde pone <username> por tu usuario de Ubuntu
Damos permisos de ejecución al archivo que acabamos de crear:
sudo chmod +x /etc/udev/rules.d/99-android.rules
Cerramos la terminal, abrimos una nueva y escribimos lo siguiente y pulsamos enter:
android
Instalamos SDK platform tools
6.Instalamos la repo
mkdir -p ~/bin mkdir -p ~/android/system
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
Lo añadimos al Path:
sudo gedit ~/.bashrc
Y escribimos lo siguiente:
export PATH=$PATH:~/bin
Guardamos, cerramos y, listo, pueden salir del terminal.
-----
Bueno, eso es todo. Más adelante haré otro tutorial para aprender a compilar CM10.1 desde sources.
Un saludo y aseguir bien compañeros
¡Empezamos!
Configurar Ubuntu 12.04 para compilar Roms desde sources
y aprender a compilar CM-10.1 para un terminal soportado
#¿Qué necesitamos?
Ubuntu 12.04 de 64 bits (tu procesador debe aceptar SO de 64 bits)
#¡Vamos a ello!
1.Debemos tener instalada la versión corecta de JDK para poder compilar android. Para ello primero desisntalaremos las versiones de java que no necesitemos ejecutando el siguiente comando en el terminal de Ubuntu:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
2.Instalamos la versión de java JDK que necesitamos, para ello primero instalamos el repositorio
sudo add-apt-repository ppa:webupd8team/java
y luego instalamos el JDK escribiendo lo siguiente, de nuevo, en el terminal de ubuntu:
sudo apt-get update && sudo apt-get install oracle-java6-installer
3.Chequeamos que la versión que hemos instalado es la correcta con el siguiente comando:
java -version
Nos debe salir algo así:
java version "1.6.0_43"
Java(TM) SE Runtime Environment (build 1.6.0_43-b01)
Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01, mixed mode)
4.Instalmos los paquetes necesarios para compilar:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
5.Instalar el Android SDK
Antes que nada debemos crear la carpeta donde se instalará el Android SDK. Para ello tecleamos lo siguiente:
cd ~ mkdir android
cd android
mkdir sdk
Tememos que descargar el Android SDK de ¡AQUÍ! (http://developer.android.com/sdk/index.html)
Luego, lo extraemos en ~/android/sdk
Añadimos el SDK al PATH con el siguiente comando:
sudo gedit ~/.bashrc
Se nos abre una ventana del editor de textos y, abajo del todo, escribimos lo siguiente:
#Android PATH
export PATH=$PATH:~/android/sdk
export PATH=$PATH:~/android/sdk/platform-tools
export PATH=${PATH}:~/android/sdk/tools
Ahora editaremos el Path para el USB:
sudo gedit /etc/udev/rules.d/51-android.rules
Se nos abrirá una ventana del editor de textos y dentro pegaremos las siguientes líneas:
# adb protocol on passion (Nexus One) SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", MODE="0600", OWNER="<username>"
# fastboot protocol on passion (Nexus One)
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="<username>"
# adb protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", MODE="0600", OWNER="<username>"
# fastboot protocol on crespo/crespo4g (Nexus S)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", MODE="0600", OWNER="<username>"
# adb protocol on stingray/wingray (Xoom)
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="70a9", MODE="0600", OWNER="<username>"
# fastboot protocol on stingray/wingray (Xoom)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="708c", MODE="0600", OWNER="<username>"
# adb protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0600", OWNER="<username>"
# fastboot protocol on maguro/toro (Galaxy Nexus)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e30", MODE="0600", OWNER="<username>"
# adb protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d101", MODE="0600", OWNER="<username>"
# fastboot protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d022", MODE="0600", OWNER="<username>"
# usbboot protocol on panda (PandaBoard)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d00f", MODE="0600", OWNER="<username>"
# usbboot protocol on panda (PandaBoard ES)
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d010", MODE="0600", OWNER="<username>"
# adb protocol on grouper/tilapia (Nexus 7)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e42", MODE="0600", OWNER="<username>"
# fastboot protocol on grouper/tilapia (Nexus 7)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0600", OWNER="<username>"
# adb protocol on manta (Nexus 10)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee2", MODE="0600", OWNER="<username>"
# fastboot protocol on manta (Nexus 10)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee0", MODE="0600", OWNER="<username>"
Cambiar donde pone <username> por tu usuario de Ubuntu
Damos permisos de ejecución al archivo que acabamos de crear:
sudo chmod +x /etc/udev/rules.d/99-android.rules
Cerramos la terminal, abrimos una nueva y escribimos lo siguiente y pulsamos enter:
android
Instalamos SDK platform tools
6.Instalamos la repo
mkdir -p ~/bin mkdir -p ~/android/system
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
Lo añadimos al Path:
sudo gedit ~/.bashrc
Y escribimos lo siguiente:
export PATH=$PATH:~/bin
Guardamos, cerramos y, listo, pueden salir del terminal.
-----
Bueno, eso es todo. Más adelante haré otro tutorial para aprender a compilar CM10.1 desde sources.
Un saludo y aseguir bien compañeros