2017-10-21 57 views
0

J'ai compilé et lié un fichier sur Android (ARM). J'ai un fichier a.out et je veux l'exécuter sur Android (ARM) en utilisant le terminal Android via la commande (./). C'est écrit "opération non autorisée". J'essaie même "chmod" mais c'est la même chose. Comment puis-je le réparer?Impossible d'exécuter le fichier a.out via le terminal Android

+0

Courez-vous sur l'appareil ou dans l'émulateur? – LethalProgrammer

+0

Je cours sur l'appareil. C'est un appareil Android enraciné. – Achie1

+0

Avez-vous vérifié que 'chmod' donne les bons paramètres? De grandes parties du système de fichiers Android sont montées de telle manière que l'autorisation d'exécution ne peut pas être définie, même par root. Aussi - comment avez-vous compilé et lié? Avez-vous lié les bibliothèques qui existent réellement? Ceci est un problème lors de la compilation croisée pour Android, car les bibliothèques ne se trouvent pas souvent au même endroit que sur les machines Linux habituelles. –

Répondre

0

Je l'ai trouvé. Le problème est que nous ne pouvons pas exécuter le fichier .out sur la carte SD Android. Donc, comme j'utilise un émulateur de terminal Android appelé Termux, j'ai copié le fichier a.out dans le répertoire de base de Termux ou un sous-répertoire appelé "Storage" via la ligne de commande "cp". Dans ces deux répertoires, j'exécute avec succès le fichier a.out. Sur Sdcard, le fichier "a.out" n'a que les propriétés "read" et "write", pas "execute".