Comment puis-je exécuter un fichier dans Cygwin?
Comment puis-je exécuter a.exe
en utilisant le shell Cygwin?
J'ai créé un fichier C dans Eclipse sous Windows, puis j'ai utilisé Cygwin pour accéder au répertoire. J'ai appelé gcc sur le fichier source C et a.exe
a été produit. Je voudrais courir a.exe
.
9 réponses
Vous devriez simplement pouvoir l'appeler en tapant le nom du fichier. Vous pouvez avoir à faire appel ./a.exe comme le répertoire courant n'est généralement pas sur le chemin pour des raisons de sécurité.
Pour exécuter un fichier dans le répertoire courant, la syntaxe à utiliser est la suivante: ./foo
Comme mentionné par allain, ./a.exe
est la bonne façon d'exécuter a.exe dans le répertoire de travail en utilisant Cygwin.
Remarque: Vous pouvez utiliser le -o
paramètre cc
pour spécifier votre propre nom de fichier de sortie. Un exemple de ceci serait: cc helloworld.c -o helloworld.exe
.
Thomas a écrit:
Apparemment, gcc ne se comporte pas comme celui décrit dans le langage de programmation C
Il le fait en général. Pour que votre programme fonctionne sur Windows, il doit se terminer .exe, "le langage de programmation C" n'a pas été écrit avec les programmeurs Windows à l'esprit. Comme vous l'avez vu, cygwin émule de nombreuses fonctionnalités D'un environnement POSIX, mais pas toutes.
Gcc sous cygwin ne génère pas un fichier de sortie exécutable Linux de type "ELF 32-bit LSB executable", mais il génère un exécutable windows de type "PE32 executable for MS Windows" qui a une dépendance sur cygwin1.dll, il doit donc être exécuté sous le shell cygwin. Si vous avez besoin de l'exécuter sous l'invite dos indépendamment, ils cygwin1.dll doit être dans votre chemin Windows.
-ANNONCE.
Apparemment, gcc ne se comporte pas comme celui décrit dans le langage de programmation C, où il est dit que la commande cc helloworld.c produit un fichier appelé a. out qui peut être exécuté en tapant a. out sur l'invite.
Un Unix ne s'est pas comporté de cette façon par défaut (donc vous pouvez simplement écrire le nom de l'exécutable sans ./ à l'avant) dans un temps long. Ça s'appelle a.exe, parce que sinon Windows ne l'exécutera pas, car il obtient des types de fichiers de l'extension.
Appelez-le simplement
> a
Assurez-vous qu'il sera trouvé (chemin).
Lorsque vous démarrez dans Cygwin, vous êtes dans la zone "/home/Administrator", alors mettez votre a.exe file là.
Puis à l'invite exécutez:
Cd a.exe
Il sera lu par Cygwin et il vous sera demandé de l'installer.