Archive for the ‘Sistema’ Category
Pasito a pasito…… las coreutils son funcionales en el droide :)
Esto va bien, tras compilar el shell bash-4.0 para el androide, me dispuse a conseguir los programitas basicos que todos usamos en la consola de linux, pero que no estan dentro del shell, como por ejemplo el comando “cp”
Lo primero que hice fue buscar de donde conseguirlos, y encontre el paquete “coreutils” que contenia todas las aplicaciones basicas. Me lo descargue de la siguiente direccion: ftp://ftp.gnu.org/gnu/coreutils/coreutils-8.5.tar.gz y me dispuse a compilarlo de igual forma que hice para el bash
Plafff!!! primera en la frente, tras ejecutar en ./configure , modificar el Makefile y ejecutar el make me encontre con que los ejecutables (los crea en la carpeta src) no eran static, sino dynamic, asi que no funcionaron en el droide al depender de librerias
No me desanime, coji el ./configure y le añadi como parametro CFLAGS=-static y lo lance, no sin antes quitar un par de parametros que me daban error por no identificarlos.
Tras esto comprobe que el Makefile lo habia generado con el parametro static, asi que ufano, lance un make. Tras este make (en realidad hubo varias pruebas y errores hasta conseguirlo), comprobe que los ejecutable eran para ARM y estaticos, wwwoooooowwwwwww lo habia conseguido.
Pero, oh tristeza, resulta que las coreutils en formato estatico ocupan 75m, asi que no podria subirlas al directorio /data/ y en la SD no me funcionaban al estar en formato FAT (o eso creo yo), asi que subir un par de ejecutables y ……………. FUNCIONO!!!!!!!!!
Mañana mas, que ya es tarde, pero esto cada dia pinta mejor :)
Un gran triunfo, he conseguido instalar bash 4.0 en mi droide
Buenas, hoy es un gran dia, y no por juegue la final la seleccion, que tambien!
sino por que he instalado el bash en mi droide.
Tras unos dias buscando por alli y por alla sobre como conseguir una ventana de comandos en mi droide (si, soy un viciado de los comandos UNIX, lo reconozco), al final he optado por la siguiente combinacion:
1º enr00tar mi droide GW620, para lo cual he seguido las indicaciones de tolemaC, he de decir que para conseguir reconocer al droide en mi linux he tenido que arranca el demonio adb como root, utilizando el comando:
./adb kill-server
sudo ./adb start-server
tras esto ya me ha reconocido el droide con el tipico “./adb devices“
2º Comprar el QuickSSHd para conseguir un demonio ssh en mi droide y asi conectarme a el via SSH. (1,55$ no esta nada mal para el uso que le pienso dar)
3º Utilizando la aplicacion gratuita ConnectBot me he podido conectar al droide via localhost:22 asi que en ese momento me ha subido la tension XDDDDDD
4º Y ahora lo mas importante, el proceso para instalar bash 4.0 en el droide:
- Bajarnos el bash de ftp://ftp.cwru.edu/pub/bash/bash-4.0.tar.gz
- Bajarnos el “ARM Toolkit (Es el compilador cruzado para procesadores ARM)” de http://www.codesourcery.com/gnu_toolchains/arm/download.html
- Por supuesto doy por hecho que teneis el SDK de Android
- Ahora con todo descargado e instalado (el toolkit de arm instalarlo en el directorio bin de vuestro home, si no lo teneis creado ejecutar el comando “mkdir ~/bin” y luego descomprimir el toolkit en dicho directorio)
- Dirigiros al directorio donde habeis descomprimido el bash, en mi caso ~/Codigo/bash-4.0
- Dentro del directorio del bash, ejecutar el comando: “./configure –prefix=/opt/arm_bash/ -host=arm-linux –enable-static-link –without-bash-malloc CC=/home/perseo/bin/arm-toolkit/bin/arm-none-linux-gnueabi-gcc“, modificad /perseo/ por vuestro usuario linux.
- Tras esto debeis editar el fichero Makefile y cambiar la linea que pone “CFLAGS = -g -O2” por “CFLAGS = -g -O2 -static” (solo se ha de añadir el parametro -static)
- Ejecutad el comando “make” y ya tendreis vuestro ejecutable bash. Para comprobar que esta compilado para un ARM, ejecutad el comando “file bash” y os deberia devolver una linea similar a esta: bash: ELF 32-bit LSB executable, ARM, version 1 (SYSV), statically linked, for GNU/Linux 2.6.16, not stripped
- Ahora desde el directorio tools del sdk de Android se ejecuta ”./adb push ~/Codigo/bash-4.0/bash /data/“, recordad que /Codigo/bash-4.0/ es mi directorio, el vuestro podria ser otro, eso solo lo sabeis vosotros, y con esto se habra copiado el bash al directorio /data del droide
5º Ahora el subidon, arrancar el demonio ssh (QuickSSHd en mi caso), conectaros con el cliente del droide (ConnectBot) a root@localhost:22 y meted password, lo tipico, vamos. Tras la conexion, si poneis: ”/data/bash” vereis un precioso entorno de comando bash :)
Hasta aqui el gran triunfito de hoy, ahora empezare a compilar las utilidades y comandos tipicos de linux que se encuentran en los directorios /bin y /sbin, como el cp, o incluso lo intentare con el mc ;)
Ya ire contando mis progresos, quien sabe, lo mismo consigo un linux funcional sin modificar el kernel ni la rom :)


