web-dev-qa-db-fra.com

Comment compiler et exécuter des programmes C en évitant "bash: ./a.out: Autorisation refusée"

J'ai installé le compilateur GCC en installant le package build-essential.

Après l'installation, j'ai écrit un programme en C simple. J'ai essayé de l'exécuter avec la commande suivante:

gcc First.c
./a.out

mais je reçois un message bash: ./a.out: Permission denied. Je ne sais pas quoi faire maintenant.

7
Silambarasan

donnez à ce programme (je veux dire a.out) l'autorisation de "s'exécuter" avec cette commande:

chmod +x ./a.out

puis exécutez-le ;-)

4
sazary

On dirait que le fichier exécutable a.out n'a pas le mode d'exécution (+ x) défini.

Exécutez la commande chmod a+x a.out pour donner à l'utilisateur le droit d'exécuter le fichier. Ensuite, vous pouvez exécuter le fichier en exécutant ./a.out dans un terminal.

Il y a un autre moyen de réaliser la même chose:

1) Cliquez avec le bouton droit sur le fichier a.out dans le navigateur de fichiers.

2) Sélectionnez Properties dans le menu déroulant.

3) Ouvrez l'onglet Permissions

4) Cochez la case Allow to execute this file as a program.

1
Bilal Akhtar

Exécuter la commande

ls -l a.out

Cela montrera les permissions accordées au fichier comme ci-dessous.

-rw-r--r--1 js js 0 2011-03-27 19:45 a.out

Le premier ensemble est les autorisations et pour l'exécuter comme tel, vous devez disposer de l'autorisation 'execute'. Accordez l'autorisation d'exécution à l'aide de chmod +x a.out ou chmod 755 a.out

1
Jamess

Écrire Ouvrez un éditeur de texte et tapez le code " Hello World " mentionné ci-dessus. Enregistrez ce fichier sous HelloWorld.c.

Compiler Ouvrez l'invite de commande et accédez au répertoire de travail actuel dans lequel vous avez enregistré votre fichier HelloWorld.c. Compilez votre code en tapant gcc HelloWorld.c dans la commande Invite. Votre programme C sera compilé avec succès, si votre programme ne contient aucune erreur de syntaxe. Il va générer un fichier a.out.

Permission Accorder une autorisation d'exécution

chmod +x ./a.out

Execute Maintenant, lancez votre programme en tapant a.out dans l'invite de commande.

Sortie Vous verrez "Hello World" imprimé sur votre console.

0
Akbar Khan