2017-06-14 5 views
0

Je travaille avec une carte cible qui utilise un microcontrôleur MCIMX6DP6AVT8AA - MPU 32 bits i.MX série 6, noyau Dual ARM Cortex-A9, 850 MHz, FCBGA 624 (voir http://www.nxp.com/webapp/search.partparamdetail.framework?PART_NUMBER=MCIMX6DP6AVT8AA). Ma carte exécute le noyau Linux 3.1.1Aucun fichier ou répertoire lors de l'exécution du fichier exécutable sur Embedded Linux

J'utilise une chaîne d'outils de compilation croisée arm-poky-linux-gnueabi, exécutée sur l'hôte Ubuntu14.04 pour construire une carte Application for Target. Après construit avec succès, j'ai vérifié le fichier de sortie comme ci-dessous

~ $ fichier MyApp

MyApp: ELF 32-bit LSB exécutables, ARM, la version EABI5 1 (SYSV), liée dynamiquement (utilisations partagées libs), pour GNU/Linux 3.1.1, BuildID [SHA1] = a800b4033343517d3368a3f3ca0c87eb98f6c1ba, pas dépouillé

Mais quand je le lance à bord cible, il y a eu erreur

~ $ ./MyApp

-SH: ./MyApp: Aucun fichier ou répertoire

Je ne sais pas ce que je fait de mal?

+0

Avez-vous copié le fichier binaire 'MyApp' sur le forum? – snoopy

+0

@snoopy: Oui, je l'ai fait. Je commande à distance et exécuter la commande pour exécuter MyApp – tuanpm

+0

avez-vous vérifié les autorisations du binaire? Est-ce que cela a l'autorisation d'exécution? – rk1825

Répondre

0

Le message provient très probablement du lieur dynamique. Regardez la sortie:

ldd MyApp 

Il vous dira toutes les dépendances de bibliothèque et où ils se trouvent sur le système. Installez ceux qui n'ont pas été trouvés.

+0

ldd ne fonctionne pas avec le fichier binaire construit par arm-poky-linux-gnueabi. Avez-vous d'autres suggestions? – tuanpm

+0

Regardez ceci: https://stackoverflow.com/questions/6150000/cross-compiler-ldd – hek2mgl