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
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
A voir également:

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
Il vaudrait mieux, en effet demander l'exécution du binaire exécutable plutôt que celle du source.
0
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
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:
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
0
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 :

gcc leprog.c -o nomDuProgramme 


Voila,
bonne journée
0
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
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
0