Execl dans un programme c sous linux
Fermé
hanagi
Messages postés
135
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
13 décembre 2012
-
31 mai 2011 à 14:35
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 - 15 janv. 2012 à 13:21
hanagi Messages postés 135 Date d'inscription dimanche 26 octobre 2008 Statut Membre Dernière intervention 13 décembre 2012 - 15 janv. 2012 à 13:21
Bonjour toutes et tous,
j'ai créé un programme en c prog1.c qui fait un simple affichage : printf("bonjour");
dans un autre programme prog2.c j'essaie d'appeler prog1 avec la fonction execl, mais cela ne marche pas, alors je suppose que le problème est dans les arguments que je passe à la fonction execl, je fais comme ça:
execl("/home/utilisateur/Bureau/prog1.c","prog1.c",NULL);
note : peut être qu'au lieu de passer "prog1.c" je dois passer son exe?? si oui, comment le faire?
Merci
j'ai créé un programme en c prog1.c qui fait un simple affichage : printf("bonjour");
dans un autre programme prog2.c j'essaie d'appeler prog1 avec la fonction execl, mais cela ne marche pas, alors je suppose que le problème est dans les arguments que je passe à la fonction execl, je fais comme ça:
execl("/home/utilisateur/Bureau/prog1.c","prog1.c",NULL);
note : peut être qu'au lieu de passer "prog1.c" je dois passer son exe?? si oui, comment le faire?
Merci
4 réponses
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
31 mai 2011 à 16:12
31 mai 2011 à 16:12
Il vaudrait mieux, en effet demander l'exécution du binaire exécutable plutôt que celle du source.
hanagi
Messages postés
135
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
13 décembre 2012
3
31 mai 2011 à 21:34
31 mai 2011 à 21:34
merci pour ta réponse, si tu permets je veux savoir comment faire pour créer le binaire exécutable.
Parce que d'habitude, pour créer un binaire d'un programme en c je fais:
et le binaire est généré automatiquement avec le nom 'a.out' Mais là j'ai besoin de lui donner un autre nom pour que je puisse passer ce dernier comme argument à la fonction 'exec'.
merci
Parce que d'habitude, pour créer un binaire d'un programme en c je fais:
cc leProgramme.c
et le binaire est généré automatiquement avec le nom 'a.out' Mais là j'ai besoin de lui donner un autre nom pour que je puisse passer ce dernier comme argument à la fonction 'exec'.
merci
Salut hanagi ! Désolé c'est peut être un peu tard, mais je répond tout de même pour ceux qui tomberaient sur le sujet:
Si tu veux compiler ton programme en .c et donner un nom au binary, il faut faire :
Voila,
bonne journée
Si tu veux compiler ton programme en .c et donner un nom au binary, il faut faire :
gcc leprog.c -o nomDuProgramme
Voila,
bonne journée
hanagi
Messages postés
135
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
13 décembre 2012
3
15 janv. 2012 à 13:21
15 janv. 2012 à 13:21
Salut Castial, ce n'est jamais trop tard pour faire du bien (enfin .. je pense), et j'espère que ce n'est pas trop tard pour te dire merci :D
j'espère que votre réponse aidera autres personnes.
Bonne journée
j'espère que votre réponse aidera autres personnes.
Bonne journée