Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec GLUT

    4 avril 2008 à 0:39:53

    Bonjour,

    je voudrais savoir si on doit rajouter la librairie GLUT pour ouvrir une fenêtre OpenGL.
    Quand je compile le code d'une simple fenêtre j'ai droit a plusieurs "undefined reference to..." !
    Voici mon code :

    1. #include <iostream>
    2. #include <GL/glut.h>
    3. int  main(int argc, char **argv)
    4. {
    5.     glutInit(&argc,argv);
    6.     glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
    7.     glutInitWindowSize(400,500);
    8.    return 0;
    9. }


    Si quelqu'un pouvait m'indiquer ma(mes) faute(s) ca m'aiderai grandement !

    Merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      4 avril 2008 à 11:23:12

      Oui tu dois inclure les bibliothèques pour que le linker (dernière phase du compilateur) retrouve les fonctions glutInit...()

      Suivant ton système d'exploitation et ton compilateur, quand tu as récupérer (et peut être compilé) glut, tu à dus récupérer récupérer des fichier .lib ou .a

      Il faut les inclures sur la ligne de commande pour ton linker, option -l (petit L) pour les compilos g++ style. Si tu utilise un IDE cherche quelque part les options du linker (parfois appelé "lieur" pour être plus français que le français), il y à forcément un endroit où tu peux gérer ça.

      Personnellement pour mes projets glut j'inclus l'es bibliothèques libglut32.a, libglu32.a et libopengl32.a (sous MinGW, Windows).

      Attention:
      Si t'es sous MinGW ya une feinte qui m'as fait perdre beaucoups de temps: pour inclure une bibliothèque on doit enlever le "lib" et le ".a", ainsi pour inclure libopengl32.a ca donne quelque chose comme
      g++ monprog.o -lopengl32 -omonprog.exe
      • Partager sur Facebook
      • Partager sur Twitter
        4 avril 2008 à 18:26:17

        Je suis sous Window Vista et sous l'IDE C::B 8.02. J'ai inclus le glut.h dans mon dossier GL comme je ne l'avais pas (j'ai lié mannuellement -lglut et -lglut32) mais j'ai une autre erreur :

        "main" must return "int".
        return type for "main" changed to "int".

        Si possible, quelqu'un pourrait me donner un code qui est uniquement fait pour ouvrir une fenêtre ni plus ni moins !

        merci encore !
        • Partager sur Facebook
        • Partager sur Twitter

        Problème avec GLUT

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown