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

Code::Blocks Discussion :

[Code::Blocks] Ne compile pas les fonction de Glib


Sujet :

Code::Blocks

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 48
    Points : 57
    Points
    57
    Par défaut [Code::Blocks] Ne compile pas les fonction de Glib
    Bonjour.

    J'ai testé ce bout de code avec gcc à la main et ça marche très bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    #include <stdio.h>
    #include <stdlib.h>
    #include <glib.h>
     
    int main()
    {
        printf("Hello world!\n");
     
        GTimer* timer = g_timer_new ();
     
        g_timer_start (timer);
     
        /* Code à chronométrer */
        g_timer_stop (timer);
        printf ("Temps ecoule : %f\n", g_timer_elapsed (timer, NULL));
        g_timer_destroy (timer);
        return 0;
    }
    $ gcc `pkg-config --cflags --libs glib-2.0` main.c -o main

    Par contre lorsque j'essaie ce même code sous C::B, j'ai ces messages d'erreurs:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    -------------- Build: Release in libc ---------------
     
    Linking console executable: bin/Release/libc
    obj/Release/main.o: dans la fonction « main »:
    main.c:(.text+0x23): référence indéfinie vers « g_timer_new »
    main.c:(.text+0x2d): référence indéfinie vers « g_timer_start »
    main.c:(.text+0x35): référence indéfinie vers « g_timer_stop »
    main.c:(.text+0x43): référence indéfinie vers « g_timer_elapsed »
    main.c:(.text+0x5b): référence indéfinie vers « g_timer_destroy »
    -------------- Build: Release in libc ---------------
    Pourtant dans mon Build Option j'ai ajouté dans pour le flag de compilation l'option suivante :
    `pkg-config --cflags --libs glib-2.0`

    Si vous pouvez m'aider. Merci

  2. #2
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    tech lead c++ linux
    Inscrit en
    Août 2004
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : tech lead c++ linux

    Informations forums :
    Inscription : Août 2004
    Messages : 4 262
    Points : 6 680
    Points
    6 680
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    je ne suis pas sûr, mais je pense qu'il faut que tu explicite le link. Je veux dire, ajouter le .a de glib dans build options -> linker setting -> link librairies
    « L'effort par lequel toute chose tend à persévérer dans son être n'est rien de plus que l'essence actuelle de cette chose. »
    Spinoza — Éthique III, Proposition VII

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/01/2013, 10h04
  2. Code::Blocks ne veut pas compiler ?
    Par yapaf_oto dans le forum Code::Blocks
    Réponses: 5
    Dernier message: 04/02/2010, 07h24
  3. Code::Blocks ne veut pas build un projet qui a été fermé
    Par Shugo78 dans le forum Code::Blocks
    Réponses: 3
    Dernier message: 09/05/2007, 08h47
  4. [gtkmm] [Code:Blocks / Win32] Compile?
    Par Jean_Benoit dans le forum GTK+
    Réponses: 3
    Dernier message: 01/10/2006, 12h25

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