android - play - power point remote
ldd equivalente en android (4)
Puedes hacer algo como:
$ /lib/ld-linux.so.2 --list filename
Esto se debe a que ldd es solo un script de shell que funciona como un contenedor alrededor del cargador dinámico. El nombre del cargador dinámico, es decir, ld- {version} .so puede diferir.
Tengo un libTest.so que no se carga en algunos dispositivos. logcat es absolutamente inútil. Usando arm-linux-androideabi-readelf.exe -d libTest.so
Pude ver todas las librerías necesarias que libTest.so necesita. Los jalé a todos, a la misma carpeta en mi PC local.
¿Cómo puedo saber qué símbolos faltan y en qué biblioteca? Solo tengo un conjunto de herramientas estándar del NDK (nm, readelf, objdump, etc.). ¿Qué herramienta y cómo puedo usar para que analice mi libTest.so y todas las bibliotecas dependientes también y me diga qué símbolo impide que mi lib se cargue en el dispositivo de destino.
Gracias a los desarrolladores de Android. Mi solicitud de funciones se implementó :) Ahora tenemos ndk-depends , una herramienta que permite resolver problemas de dependencias.
Editar: aunque no tiene una resolución de símbolo completa. Por ejemplo, si compila contra Android-14 y trata de usar métodos que no existían en Androids antiguos, esta herramienta no listará los símbolos que faltan. Esta parte se dejó como un TODO en ndk-depends.
Me encontré con el mismo problema y no quería instalar el ndk ni tomar todo el árbol fuente para descubrir qué necesita un exe.
readelf --dynamic filename | grep NEEDED
muestra las libs dinámicas para un binario elfo.
En la terminal de Android prueba esto:
strings /path/to/your/file | grep ^lib
strings /path/to/your/file | grep ^lib
Se encuentra aquí: https://forum.xda-developers.com/showthread.php?t=2737126&page=5