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

GTK+ Discussion :

Problème de compilation


Sujet :

GTK+

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Mars 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2017
    Messages : 15
    Points : 19
    Points
    19
    Par défaut Problème de compilation
    Bonjours,
    je me presente je suis un lyceen qui s'interresse a la proframation en C.
    J'ai quelque base avec ce language et je m'interresse depuis peu a la librairie GTK.
    je post ici car j 'ai un probleme de compilation sur mon programme coder en C avec la bibliotheque GTK.
    j'ai fais un code tres basique juste pour tester et j'ai toujours le meme probleme a la compilation (J'oubliais je suis sur UBUNTU et j'utilise la l'editeur ATOM)

    CODE:

    #include <stdlib.h>
    #include <gtk/gtk.h>

    void OnDestroy(GtkWidget *pWidget, gpointer pData);

    int main(int argc,char **argv)
    {
    /* Déclaration du widget */
    GtkWidget *pWindow;
    gtk_init(&argc,&argv);

    /* Création de la fenêtre */
    pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    /* Définition de la position */
    gtk_window_set_position(GTK_WINDOW(pWindow), GTK_WIN_POS_CENTER);
    /* Définition de la taille de la fenêtre */
    gtk_window_set_default_size(GTK_WINDOW(pWindow), 320, 200);
    /* Titre de la fenêtre */
    gtk_window_set_title(GTK_WINDOW(pWindow), "Chapitre I.");
    /* Connexion du signal "destroy" */
    g_signal_connect(G_OBJECT(pWindow), "destroy", G_CALLBACK(OnDestroy), NULL);
    /* Affichage de la fenetre */
    gtk_widget_show(pWindow);
    /* Démarrage de la boucle événementielle */
    gtk_main();

    return EXIT_SUCCESS;
    }

    void OnDestroy(GtkWidget *pWidget, gpointer pData)
    {
    /* Arrêt de la boucle événementielle */
    gtk_main_quit();
    }

    COMMANDE DE COMPILATION:

    gcc $(pkg-config --libs --cflags gtk+-2.0) test.c

    RESULTAT:

    /tmp/ccL2qhbX.o*: Dans la fonction «*main*»*:
    test.c.text+0x1e)*: référence indéfinie vers «*gtk_init*»
    test.c.text+0x28)*: référence indéfinie vers «*gtk_window_new*»
    test.c.text+0x31)*: référence indéfinie vers «*gtk_window_get_type*»
    test.c.text+0x43)*: référence indéfinie vers «*g_type_check_instance_cast*»
    test.c.text+0x50)*: référence indéfinie vers «*gtk_window_set_position*»
    test.c.text+0x55)*: référence indéfinie vers «*gtk_window_get_type*»
    test.c.text+0x67)*: référence indéfinie vers «*g_type_check_instance_cast*»
    test.c.text+0x79)*: référence indéfinie vers «*gtk_window_set_default_size*»
    test.c.text+0x7e)*: référence indéfinie vers «*gtk_window_get_type*»
    test.c.text+0x90)*: référence indéfinie vers «*g_type_check_instance_cast*»
    test.c.text+0x9d)*: référence indéfinie vers «*gtk_window_set_title*»
    test.c.text+0xae)*: référence indéfinie vers «*g_type_check_instance_cast*»
    test.c.text+0xd1)*: référence indéfinie vers «*g_signal_connect_data*»
    test.c.text+0xdd)*: référence indéfinie vers «*gtk_widget_show*»
    test.c.text+0xe2)*: référence indéfinie vers «*gtk_main*»
    /tmp/ccL2qhbX.o*: Dans la fonction «*OnDestroy*»*:
    test.c.text+0xfe)*: référence indéfinie vers «*gtk_main_quit*»
    collect2: error: ld returned 1 exit status



    Merci de votre aide

  2. #2
    Modérateur

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2009
    Messages
    1 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 395
    Points : 2 002
    Points
    2 002
    Par défaut
    Bonjour,

    tu peux essayer ceci ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc $(pkg-config --cflags gtk+-2.0) test.c -o gtk-test $(pkg-config --libs gtk+-2.0)
    Au fait, GTK 2 est très ancien, je te conseille de passer à GTK 3.
    Documentation officielle GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels GTK+ 3:
    GTK en C, GTK en Python

    Tutoriels par l'exemple (platform-demos):
    GTK (tous langages)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Mars 2017
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2017
    Messages : 15
    Points : 19
    Points
    19
    Par défaut
    je te remercie de ton aide et je compte passer sur GTK 3.0 prochainement

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

Discussions similaires

  1. problème de compilation sous visual C++
    Par fabmili dans le forum MFC
    Réponses: 4
    Dernier message: 08/02/2004, 19h52
  2. problème de compil devc++ socket
    Par stefdem dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 11/12/2003, 11h33
  3. Réponses: 1
    Dernier message: 29/10/2003, 12h16
  4. Problème de compilation de la DLL du XMLRad
    Par [DreaMs] dans le forum XMLRAD
    Réponses: 2
    Dernier message: 16/04/2003, 16h46
  5. Réponses: 1
    Dernier message: 27/05/2002, 01h44

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