IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Lancer un executable sous Ubuntu en C ou C++


Sujet :

Linux

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 218
    Par défaut Lancer un executable sous Ubuntu en C ou C++
    Bonjour
    Je recherche a lancer un fichier executable ou script shell (avec ou sans parametres)

    avez vous une idée?

    Ide Glade
    language C++ ou C

    Os Linux Ubunto


    merci par avance d'aider un pauvre debutant

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Par défaut
    Bonjour,

    Si je comprends bien, tu cherches un idée de programme à développer, en C ou C++, sous Linux ?
    Si tel est bien le ca, peux-tu préciser ton niveau en développement, et une vague idée de ce que tu cherches à faire ?

    A moins que je ne me fourvoies, et que ce soit complètement autre chose que tu cherches à faire ?
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 218
    Par défaut
    Je me suis mal exprime
    a partir d'une interface graphique composé d'un bouton ,

    Je recherche a lancer soit un programme soit un script shell
    par exemple

    J'ai fait du c++ buider sous windows mais sous linux je galere
    merci encore de votre aide

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 136
    Par défaut
    Bonjour,

    J'ai mal compris !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 136
    Par défaut
    En tout cas, il y a les fonctions de la famille exec, comme execv, execve, execl ....., elle sont bien documentées sur les pages de man

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 218
    Par défaut
    Bonjour
    je pose une question bete
    j'ai fait un man exec il me dit qu'il ya aucune entre au manuel
    je pense que la commande n'est pas installée

    comment l'installer ?

    merci encore

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 136
    Par défaut
    je pose une question bete
    non, ce n'est pas une question bête, j'ai oublié de te dire qu'il n'existe pas de fonction appelée exec(). Les fonctions de cette famille sot execl, execle, execlp, execv, execve et execvp.

    La différence se trouve dans le suffixe (l, e, v, p),

    l : liste d'arguments à passer à l'exécutable
    e : passer le tableau envp[] à l'exécutable
    v : les arguments sont passé dans un tableau à l'exécutable
    p : cherchr l'exécutable dans le contenu de la variable PATH

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 218
    Par défaut
    merci encore de vos conseils

    auiez vous un petit exemple ?
    par exemple pour lancer gedit ?


    J'ai essaye ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    execve("gedit",NULL,NULL);
    cela ne marche pas ?


    merci

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    136
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 136
    Par défaut
    salut,
    voila un code qui marche
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #include <unistd.h>
     
    int main(){
     
        execlp("gedit", "gedit", NULL);
     
        return 0;
    }
    Voila un chapitre du livre "Programmation système en c sous linux" de Christophe Blaess, qui explique bien l'exécution des programmes, avec des exemples.

    ICI

    Bon courage

  10. #10
    Rédacteur
    Avatar de cladsam
    Profil pro
    Inscrit en
    Août 2003
    Messages
    1 787
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2003
    Messages : 1 787
    Par défaut
    en fait quand on appèle un programme en ligne de commande, le 1er argument, (index 0 du tableau donc) est le nom du programme lui même.
    Du coup, le 2eme paramètre ne peut as être vide ce qui explique la redondance : tu appèle le progr gedit en lui passant gedit comme premier argument.

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    218
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 218
    Par défaut
    Merci a vous tous de vos reponses

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de lancement d'un executable sous Ubuntu 12.04
    Par kouogang fotso dans le forum Ubuntu
    Réponses: 4
    Dernier message: 22/09/2013, 00h21
  2. Generer un executable sous Ubuntu
    Par layes88 dans le forum C
    Réponses: 3
    Dernier message: 05/01/2011, 20h45
  3. [Process] lancer une execution sous xterm
    Par tarekphp dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 17/07/2008, 09h17
  4. Réponses: 2
    Dernier message: 03/04/2008, 10h52
  5. Impossible de lancer Code::Blocks 8.02 sous Ubuntu
    Par koskoz dans le forum Code::Blocks
    Réponses: 3
    Dernier message: 11/03/2008, 08h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo