Pas en mesure d'exécuter le fichier exécutable à partir de la commande adb shell
J'ai ajouté tcpdump fichier binaire à mon appareil android à l'aide de cette commande
./adb push ~/tcpdump-4.2.1/tcpdump /data/local
Le binaire est ajouté à l'appareil android avec succès.
Mais, lorsque j'essaie d'exécuter l'outil tcpdump fichier à partir de la commande adb shell, en utilisant les commandes suivantes
./adb shell
cd data/local
./tcpdump
Il me donne cette erreur
/system/bin/sh: ./tcpdump: not executable: magic 7F45
J'ai aussi essayé de changer les autorisations à l'aide chmod 777 tcpdump
mais en vain.
Comment puis-je résoudre ce problème? Merci.
Comment le compiler?
quelle erreur de ne chmod vous donne? vous pourriez pousser à la sdcard, chmod, puis de le déplacer (je suppose). êtes-vous à la racine?
J'utilise android émulateur de terminal. Il est livré avec busybox qui a tcpdump
J'ai compilé sur mon ubuntu desktop à l'aide de ces commandes ./configure, make sudo make install. Puis j'ai poussé la tcpdump fichier sur l'appareil android.
Yep et c'est pas des aides. Parce que vous ne pouvez pas exécuter sur les fichiers android qui a été compilé avec le standart de GCC. Vous devriez l'utiliser à partir de NDK pour compiler en 32 bits ELFE de fichier...
quelle erreur de ne chmod vous donne? vous pourriez pousser à la sdcard, chmod, puis de le déplacer (je suppose). êtes-vous à la racine?
J'utilise android émulateur de terminal. Il est livré avec busybox qui a tcpdump
J'ai compilé sur mon ubuntu desktop à l'aide de ces commandes ./configure, make sudo make install. Puis j'ai poussé la tcpdump fichier sur l'appareil android.
Yep et c'est pas des aides. Parce que vous ne pouvez pas exécuter sur les fichiers android qui a été compilé avec le standart de GCC. Vous devriez l'utiliser à partir de NDK pour compiler en 32 bits ELFE de fichier...
OriginalL'auteur Harshal Kshatriya | 2012-10-04
Vous devez vous connecter pour publier un commentaire.
Vous pouvez trouver une version Android de tcpdump ici. Cette version est quelque peu obsolète, et uniquement pour les appareils ARM. Vous devez suivre ces instructions pour construire les binaires de source officielle.
Il y a des instructions détaillées re comment faire pour exécuter tcpdump sur Android. Notez que vous avez besoin d'un dispositif enracinée pour commencer.
Liés à construire de tcpdump est la version 4.0 qui est un peu vieux. Vous pouvez télécharger un BRAS de build de la version 4.3 ici: omappedia.org/wiki/File:Tcpdump-4.3.0-arm.tar.gz
OriginalL'auteur Alex Cohn
Vous devez compiler des fichiers binaires via
GCC
de Android NDKOriginalL'auteur Arseniy
essayez la commande suivante:
entrez cette commande
c:\ProgramFiles\Android\android-sdk\platform-tools\adb shell tcpdump
pour linux:
et également passer par ce lien pour mieux comprendre:
http://www.kandroid.org/online-pdk/guide/tcpdump.html
j'ai posté la réponse, veuillez vérifier les et laissez-moi savoir... saisissez votre chemin à tcpdump fichier
OriginalL'auteur G M Ramesh
J'ai eu la même erreur en essayant de lancer un autre binaire dans l'émulateur android. Erreur vient de la compilation.
Vous avez de cross-compiler pour un BRAS de la cible, ce qui signifie que vous besoin d'une chaîne d'outils comme par exemple arm-linux-androideabi.
Pour ce faire, vous devez
Ensuite, vous pouvez exécuter la commande make. Vous pouvez ajouter -statique à la LDFLAGS avant de construire.
Enfin vérifier votre binaire a été compilé en utilisant le fichier de commande. Vous devriez regarder pour les BRAS dans le résultat imprimé.
Dans le cas où le Makefile ne gère pas les CROSS_COMPILE var, vous pouvez essayer avec les paramètres CC et AR définir manuellement avec "$CROSS-COMPILER gcc et "$CROSS-COMPILER"ar
plus de détails ici: http://source.android.com/source/index.html
OriginalL'auteur gguich4rd