Android avanzado: encontrar las librerías que faltan en una ROM portada

Android avanzado: encontrar las librerías que faltan en una ROM portada

En ocasiones, cuando un dispositivo arranca, el logcat indica que faltan algunas librerías .so. Para encontrar las que no están en la ROM nos vamos a basar en una guía muy simple creada por el miembro de XDA Developers tuxboy y que podéis encontrar en inglés, pero que nosotros vamos a traducir al idioma de Cervantes para que, si hay algún desarrollador entre nuestros lectores, le resulte más fácil comprenderla.

La guía demuestra cómo se pueden usar las herramientas disponibles en el Android NDK para encontrar qué archivos necesitan añadirse para satisfacer las dependencias del fichero ejecutable o de la librería. El proceso es muy directo y no requiere ninguna herramienta especial exceptuando la toolchain disponible en el código fuente de Android. Para utilizar este método, eso sí, necesitáis ser usuarios de GNU/ Linux, Mac OS X o cualquier otro sistema operativo de la familia Unix, además del Android NDK instalado como es lógico.

Para usar este método por primera vez, es necesario configurarlo antes de hacer nada. Para ello, abrimos una terminal y escribimos lo siguiente:

$ echo 'readelf -d $1 | grep "(NEEDED)" | sed -r "s/.*[(.*)]/1/"' | sudo tee -a /usr/local/bin/ldd-arm$ sudo chmod +x /usr/local/bin/ldd-arm

Una vez hecho esto ya nos podemos poner con la búsqueda de las librerías en cuestión. Para ello, tenemos que usar en la terminal esta sintaxis:

$ ldd-arm PATH_AL_ARCHIVO_EJECUTABLE_O_LIBRERIA

Veámoslo con un ejemplo. Supongamos que queremos encontrar las dependencias necesarias para un sensor HAL. En un terminal tecleamos lo siguiente:

$ ldd-arm copybit.msm7x27a.so

Y deberíamos obtener el siguiente resultado:

liblog.solibutils.solibcutils.solibhardware.solibdl.solibmemalloc.solibc.solibstdc++.solibm.so

Con este comando sencillo se pueden ver las librerías necesarias que faltan para que algo funcione correctamente de forma muy directa y sin rodeos, y seguro que los desarrolladores que no conocieran este método lo agradecerán. Para ello podéis pasaros por el hilo oficial de la guía XDA Developers y agradecérselo a su creador.

Para estar siempre al día con lo último en tecnología, suscríbete a nuestro canal oficial y verificado de Andro4all en WhatsApp.

Para ti
Queremos saber tu opinión. ¡Comenta!