1 votes

Impossible d'exécuter le binaire poussé

J'ai poussé le fichier exécutable adb vers /system pour l'utiliser pour se connecter à d'autres appareils, mais le shell ne peut pas exécuter ce fichier. Pourquoi ?

chiron / # file `which adb`
/system/xbin/adb: ELF executable, 64-bit LSB arm64, dynamic (/lib/ld-linux-aarch64.so.1), BuildID=408e8d3f813fbb95b782db5d56f91bc41b451acb, stripped
chiron / # adb
bash: /system/xbin/adb: No such file or directory

2voto

Guillermo Gomez Points 423

Vous avez probablement mal fait la compilation croisée.

En file suggère que le linker dynamique pour le binaire est /lib/ld-linux-aarch64.so.1 qui n'existe pas sur Android. L'éditeur de liens d'Android est situé à /system/bin/linker (32 bits) et /system/bin/linker64 . Vous devez spécifier ce chemin comme linker dynamique lors de la compilation.

Vous pouvez essayer d'établir un lien symbolique entre le linker dynamique d'Android et le chemin révélé par la commande file .

0 votes

chiron / # /system/bin/linker64 /system/xbin/adb This is /system/bin/linker64, the helper program for dynamic executables.

0 votes

Que voulez-vous dire par là ? /system/xbin est déjà dans le PATH et je ne peux pas lier ce fichier quelque part pour le rendre plus exécutable.

0 votes

@J.Doe C'est exactement ce que je veux dire : mkdir /lib; ln -s /system/bin/linker64 /lib/ld-linux-aarch64.so.1 et essayez ensuite d'exécuter votre exécutable.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X