probleme de compilation opengl sous linux

probleme de compilation opengl sous linux - Programmation

Marsh Posté le 03-02-2002 à 15:15:53    

voila le probleme :

Citation :


 
[bemixam@zero opengl]$ cc ex1-1.c -L/usr/X11R6/lib/ -lglut -lGL
/usr/X11R6/lib//libglut.so: undefined reference to `gluErrorString'
/usr/X11R6/lib//libglut.so: undefined reference to `gluNewQuadric'
/usr/X11R6/lib//libglut.so: undefined reference to `gluQuadricDrawStyle'
/usr/X11R6/lib//libglut.so: undefined reference to `gluCylinder'
/usr/X11R6/lib//libglut.so: undefined reference to `gluQuadricNormals'
/usr/X11R6/lib//libglut.so: undefined reference to `gluSphere'
collect2: ld returned 1 exit status
 

 
 
et le programme :

Citation :


#include <GL/glut.h>
#include <GL/glx.h>
#include <X11/Xlib.h>
#include <stdlib.h>
#include <stdio.h>
 
void display(void)
{
  glClear(GL_COLOR_BUFFER_BIT);
 
  glColor3f(1.0, 1.0, 1.0);
  glBegin(GL_POLYGON);
  glVertex3f(0.25, 0.25, 0.0);
  glVertex3f(0.75, 0.25, 0.0);
  glVertex3f(0.75, 0.75, 0.0);
  glVertex3f(0.25, 0.75, 0.0);
  glEnd();
 
  glFlush();
}
 
void init(void)
{
  glClearColor(0.0, 0.0, 0.0, 0.0);
 
  glMatrixMode(GL_PROJECTION);
  glLoadIdentity();
  glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);
}
 
int main(int argc, char **argv)
{
  glutInit(&argc, argv);
  glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
  glutInitWindowSize(250, 250);
  glutInitWindowPosition(100, 100);
  glutCreateWindow("Bonjour" );
  init();
  glutDisplayFunc(display);
  glutMainLoop();
  return 0;
}


 
je suppose qu il manque un truc genre une lib ou autre mais laquelle ?
 
ou puis je trouver des infos sur la compilation sous linux de programmes opengl ?

Reply

Marsh Posté le 03-02-2002 à 15:15:53   

Reply

Marsh Posté le 03-02-2002 à 15:50:14    

Il te manque l'option -lGLU au moins
 
Pour linux ca me donne:
 
-lMesaGL -lMesaGLU -lglut -lX11 -lXmu -lXi -lm
 
(tu peux remplacer MesaGxx par Gxx généralement)

Reply

Marsh Posté le 03-02-2002 à 18:45:46    

merci mais ca me donne ca :
 
[bemixam@zero opengl]$ cc ex1-1.c -lGL -lGLU -lglut -lX11 -lXmu -lXi -lm
/usr//bin/ld: cannot find -lGLU
collect2: ld returned 1 exit status
 
[bemixam@zero opengl]$ locate libglu
/usr/lib/wine/libglu32.so
/usr/X11R6/lib/libglut.so.3.7.0
/usr/X11R6/lib/libglut.so.3
/usr/X11R6/lib/libglut.la
/usr/X11R6/lib/libglut.so
 
...
mouais bah j ai plus d idees  la ...
il doit falloir que j installe des trucs mais je sais pas quoi ..

Reply

Marsh Posté le 03-02-2002 à 18:50:06    

Je crois que locate est case sensitive, donc tu pourrais avoir envie de faire un locate libGLU plustot

Reply

Marsh Posté le 03-02-2002 à 19:01:13    

[bemixam@zero opengl]$ locate libGLU
/usr/X11R6/lib/libGLU.so.1.2.030402
/usr/X11R6/lib/libGLU.so.1
/usr/X11R6/lib/libGLU.so.3
/usr/X11R6/lib/libGLU.la
/usr/X11R6/lib/libGLU.so
 
j ai l impression de tout avoir ... mais il en veux pas ... :(

Reply

Marsh Posté le 03-02-2002 à 19:14:33    

j ai trouve !!  :bounce:  
alors si ca peut servir a qqun ... je donne la reponse ...
c est certe un peu bourrin ( y doit bien y avoir des trucs qui servent a rien ) mais ca fonctionne !
 
cc ex3.c -lglut -lGLU -lGL -lX11  -lXt -lXi -lXmu -lXext -lX11 -lm -I/usr/X11R6/include -L/usr/X11R6/lib

Reply

Marsh Posté le 06-02-2002 à 20:38:02    

Ou /usr/X11R6/lib/ dans le ld.so.conf ca le fait aussi (c pour ca que j'avais pas d'erreur).

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed