Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Linux + Opengl - Glut

Iniciado por zupervaca, 24 de Septiembre de 2005, 07:17:32 PM

« anterior - próximo »

janio

 Tal vez te falte instalar paquete(s) -dev.

En Debian viene en xlibmesa-gl-dev

shephiroth

 Muy buenas.

Se que hace mucho tiempo que se inicio este post, y me  lo meti en favoritos pq sabía que algun día lo usaría. Pues bien, el día ha llegado, y me apena mucho tener que reabrirlo y tener que molestarlos.

Como ya comente hace tiempo tengo intenion de portar mi pequeño juego a linux...mas como una forma de aprender como se hace que por el hecho de necesitarlo. He seguido este post desde el principio, bajandome el ejemplo de codesampler, e instalandome las librerias que citais, pero no ha habido manera.....

Como el codigo lo teneis en codesampler prefiero no ponerlo aqui, pero si alguien cree que es necesario no tengo problema en ponerlo. Sin embargo, este es el resultado de mi compilacion:


jorge@debian:~$ cd pruebas
jorge@debian:~/pruebas$ ls -l
total 16
-rw-r--r--  1 jorge jorge 12725 2005-10-13 02:05 ventana.cpp
jorge@debian:~/pruebas$ g++ -o ventana ventana.cpp
/tmp/cci8YrNM.o(.text+0x22): En la función `main':
: undefined reference to `XOpenDisplay'
/tmp/cci8YrNM.o(.text+0x7a): En la función `main':
: undefined reference to `glXQueryExtension'
/tmp/cci8YrNM.o(.text+0x127): En la función `main':
: undefined reference to `glXChooseVisual'
/tmp/cci8YrNM.o(.text+0x156): En la función `main':
: undefined reference to `glXChooseVisual'
/tmp/cci8YrNM.o(.text+0x1b3): En la función `main':
: undefined reference to `glXCreateContext'
/tmp/cci8YrNM.o(.text+0x22f): En la función `main':
: undefined reference to `XCreateColormap'
/tmp/cci8YrNM.o(.text+0x2d1): En la función `main':
: undefined reference to `XCreateWindow'
/tmp/cci8YrNM.o(.text+0x31a): En la función `main':
: undefined reference to `XSetStandardProperties'
/tmp/cci8YrNM.o(.text+0x33a): En la función `main':
: undefined reference to `glXMakeCurrent'
/tmp/cci8YrNM.o(.text+0x350): En la función `main':
: undefined reference to `XMapWindow'
/tmp/cci8YrNM.o(.text+0x36c): En la función `main':
: undefined reference to `XNextEvent'
/tmp/cci8YrNM.o(.text+0x4b2): En la función `main':
: undefined reference to `glViewport'
/tmp/cci8YrNM.o(.text+0x4bf): En la función `main':
: undefined reference to `XPending'
/tmp/cci8YrNM.o(.text+0x500): En la función `init()':
: undefined reference to `glClearColor'
/tmp/cci8YrNM.o(.text+0x50c): En la función `init()':
: undefined reference to `glEnable'
/tmp/cci8YrNM.o(.text+0x518): En la función `init()':
: undefined reference to `glMatrixMode'
/tmp/cci8YrNM.o(.text+0x51d): En la función `init()':
: undefined reference to `glLoadIdentity'
/tmp/cci8YrNM.o(.text+0x549): En la función `init()':
: undefined reference to `gluPerspective'
/tmp/cci8YrNM.o(.text+0x7f7): En la función `loadTexture()':
: undefined reference to `glGenTextures'
/tmp/cci8YrNM.o(.text+0x80c): En la función `loadTexture()':
: undefined reference to `glBindTexture'
/tmp/cci8YrNM.o(.text+0x828): En la función `loadTexture()':
: undefined reference to `glTexParameteri'
/tmp/cci8YrNM.o(.text+0x844): En la función `loadTexture()':
: undefined reference to `glTexParameteri'
/tmp/cci8YrNM.o(.text+0x88d): En la función `loadTexture()':
: undefined reference to `glTexImage2D'
/tmp/cci8YrNM.o(.text+0x8a2): En la función `render()':
: undefined reference to `glClear'
/tmp/cci8YrNM.o(.text+0x8ae): En la función `render()':
: undefined reference to `glMatrixMode'
/tmp/cci8YrNM.o(.text+0x8b3): En la función `render()':
: undefined reference to `glLoadIdentity'
/tmp/cci8YrNM.o(.text+0x8d2): En la función `render()':
: undefined reference to `glTranslatef'
/tmp/cci8YrNM.o(.text+0x8ff): En la función `render()':
: undefined reference to `glRotatef'
/tmp/cci8YrNM.o(.text+0x92c): En la función `render()':
: undefined reference to `glRotatef'
/tmp/cci8YrNM.o(.text+0x941): En la función `render()':
: undefined reference to `glBindTexture'
/tmp/cci8YrNM.o(.text+0x95d): En la función `render()':
: undefined reference to `glInterleavedArrays'
/tmp/cci8YrNM.o(.text+0x979): En la función `render()':
: undefined reference to `glDrawArrays'
/tmp/cci8YrNM.o(.text+0x998): En la función `render()':
: undefined reference to `glXSwapBuffers'
/tmp/cci8YrNM.o(.text+0x99f): En la función `render()':
: undefined reference to `glFlush'
collect2: ld devolvió el estado de salida 1


Solo comentar que no es problema de librerias, tengo la carpeta GL en su sitio y contiene tanto gl.h como glu.h como glx.h, todas en minusculas y accesibles......el compilador no se queja de encontrar los archivos, y es lo q me molesta.....

A ver si me pueden echar un cable, GRACIAS ^^

senior wapo

 Pues va a ser que si es problemas de librerias, no es por nada  :P

Te has olvidado de decirle al compilador con que librerias enlazar :)

g++ -o ventana ventana.cpp -L/usr/X11R6/lib -lx11 -lXext -lm -lgl -lglut

Te lo he puesto de memoria, asi que las rutas o nombres de librerias (ojo mayusculas) pueden no ser correctos. Como poco, te falla al linkar con Xlib (-lX11) y con opengl. Ya no me acuerdo si la libreria opengl en Linux  era -lgl o -lmesagl o similares...

shephiroth

 Vale, muchas gracias, al final me funciono ^_^

Por si alguien le interesa el comando final fue:
g++ -o ventana ventana.cpp -L/usr/X11R6/lib -lX11 -lXext -lm -lGL -lGLU

GRACIAS

vicho







Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.