información sobre opengl y window.h

Iniciado por ahigor, 24 Julio 2016, 13:46 PM

0 Miembros y 1 Visitante están viendo este tema.

ahigor

obj\Debug\main.o||In function `main|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|10|undefined reference to `glfwInit'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|16|undefined reference to `glfwCreateWindow'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|21|undefined reference to `glfwMakeContextCurrent'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|24|undefined reference to `_imp__glClearColor@16'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|29|undefined reference to `glfwPollEvents'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|31|undefined reference to `_imp__glClear@4'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|34|undefined reference to `_imp__glColor3f@12'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|35|undefined reference to `_imp__glBegin@4'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|36|undefined reference to `_imp__glVertex2f@8'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|37|undefined reference to `_imp__glVertex2f@8'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|38|undefined reference to `_imp__glVertex2f@8'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|39|undefined reference to `_imp__glEnd@0'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|42|undefined reference to `glfwSwapBuffers'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|27|undefined reference to `glfwWindowShouldClose'|
C:\Users\EDU\Desktop\mis projectos\mi juego\main.cpp|46|undefined reference to `glfwTerminate'|
||=== Build finished: 15 errors, 0 warnings ===|

ahora lo he copiado y me da todos estos errores :(

ivancea96

Tienes que linkear las librerías opengl32 y glfw3 (si es que usas glfw 3).
En Code::Blocks, vas a Settings->Compiler->Linker Settings, y añades ahí esas librerías.
En Consola, pondrías -l<nombre de la librería>.

Si no te encuentra las librerías, ve a Search directories en esa misma ventana, y en linker, añade el directorio de las librerías de glfw. (glfw/lib), si no me equivoco. Asegúrate de que dentro haya un archivo llamado "glfw3.a", o "libglfw3.a", o algo del estilo.

ahigor

lo he intentado todo y no va no se que pasa :(

class_OpenGL

Yo lo encontré. Tiene una llave mal puesta XD En realidad compilé el código y vi el fallo

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL

ahigor

si creo que ya si la encotré yo también pero me sigue dando un montón de errores :(

class_OpenGL

Cuando copiaste la librería *.a, ¿Copiaste libglfw3.a o libglfw.dll.a?

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL

ahigor

#36
tengo eso a mano dime que hago con ellas tengo glfw3 glfwnative

class_OpenGL

Lo que tienes que hacer es irte a code blocks, ir al menú 'Project' -> 'Build Options' -> Pestaña 'Search Directories' -> Pestaña 'Linker' -> Botón 'Add' y seleccionas la carpeta en la que esté libglfw3.a

Una vez hecho eso, en Code::Blocks hay que ir a 'Project' -> 'Build Options' -> Pestaña 'Linker Settings' y en el cuadro nombrado 'Other Linker Options' tienes que escribir lo siguiente:

-lglfw3
-lopengl32
-lgdi32

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL

ahigor

Oye una pregunta como descargo OpenGL 3:0 y como se instala

class_OpenGL

Ten en cuenta que OpenGL depende de la tarjeta gráfica que tengas, así que si tu gráfica no soporta OpenGL 3.0, entonces no hay nada eficiente que hacer. Si tu tarjeta es compatible con OpenGL 3.0, pero tu ordenador no lo detecta, entonces tienes que instalar la última versión de los drivers de la gráfica. Si sigue sin detectarse, probablemente el problema sea un bug con los drivers.

Programador aficionado. Me quiero centrar en programar videojuegos. La API que uso para crearlos es OpenGL