Question

I believe I am doing something wrong, because all I am trying to do is compile tutorial 4 of opengl tutorials. I believe I keep getting a lot of errors relating to GLM, and need help fixing it. This is the error I recieve when I try to compile it(I believe I installed everything else correctly as well):

specs are mingw 64, windows 7, I know glfw works. not sure about glew, but I don't see any problems on glew. I have placed it in the glm header file in the proper folder, over and over again.

C:\Users\Public\Documents\ACADEMICS\Personal Library\OpenGL-tutorial_v0014_33\Op
enGL-tutorial_v0014_33\tutorial04_colored_cube>g++ tutorial04.cpp -lmingw32 -lop
engl32 -lglew32 -lglu32 -lglfw3 -mwindows
In file included from c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../.
./../x86_64-w64-mingw32/include/glm/gtc/matrix_transform.hpp:292:0,
                 from tutorial04.cpp:14:
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl: In function 'glm::detail::tmat4x4<T, P>
glm::rotate(const glm::detail::tmat4x4<T, P>&, const T&, const glm::detail::tvec
3<T, P>&)':
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl:79:165: note: #pragma message: GLM: rotat
e function taking degrees as a parameter is deprecated. #define GLM_FORCE_RADIAN
S before including GLM headers to remove this message.
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl: In function 'glm::detail::tmat4x4<T, P>
glm::rotate_slow(const glm::detail::tmat4x4<T, P>&, const T&, const glm::detail:
:tvec3<T, P>&)':
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl:120:170: note: #pragma message: GLM: rota
te_slow function taking degrees as a parameter is deprecated. #define GLM_FORCE_
RADIANS before including GLM headers to remove this message.
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl: In function 'glm::detail::tmat4x4<T, (gl
m::precision)0u> glm::perspective(const valType&, const valType&, const valType&
, const valType&)':
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl:253:170: note: #pragma message: GLM: pers
pective function taking degrees as a parameter is deprecated. #define GLM_FORCE_
RADIANS before including GLM headers to remove this message.
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl: In function 'glm::detail::tmat4x4<T, (gl
m::precision)0u> glm::perspectiveFov(const valType&, const valType&, const valTy
pe&, const valType&, const valType&)':
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl:285:173: note: #pragma message: GLM: pers
pectiveFov function taking degrees as a parameter is deprecated. #define GLM_FOR
CE_RADIANS before including GLM headers to remove this message.
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl: In function 'glm::detail::tmat4x4<T, (gl
m::precision)0u> glm::infinitePerspective(T, T, T)':
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl:311:178: note: #pragma message: GLM: infi
nitePerspective function taking degrees as a parameter is deprecated. #define GL
M_FORCE_RADIANS before including GLM headers to remove this message.
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl: In function 'glm::detail::tmat4x4<T, (gl
m::precision)0u> glm::tweakedInfinitePerspective(T, T, T)':
c:\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/include/glm/gtc/matrix_transform.inl:339:185: note: #pragma message: GLM: twea
kedInfinitePerspective function taking degrees as a parameter is deprecated. #de
fine GLM_FORCE_RADIANS before including GLM headers to remove this message.
C:\Users\Richard\AppData\Local\Temp\ccuc6Ups.o:tutorial04.cpp:(.text+0x28c): und
efined reference to `LoadShaders(char const*, char const*)'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(context.c.obj):context.c:(.text+0x3c): undefined referen
ce to `glGetString'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(context.c.obj):context.c:(.text+0xab): undefined referen
ce to `glGetIntegerv'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(context.c.obj):context.c:(.text+0x5c6): undefined refere
nce to `glGetString'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(context.c.obj):context.c:(.text+0x710): undefined refere
nce to `glGetIntegerv'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(context.c.obj):context.c:(.text+0x74e): undefined refere
nce to `glGetIntegerv'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(context.c.obj):context.c:(.text+0x7e2): undefined refere
nce to `glGetIntegerv'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0xa51): undefine
d reference to `__imp_wglMakeCurrent'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0xadd): undefine
d reference to `__imp_wglGetProcAddress'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0xf33): undefine
d reference to `__imp_wglCreateContext'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0xf5d): undefine
d reference to `__imp_wglShareLists'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0x1186): undefin
ed reference to `__imp_wglDeleteContext'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0x12fd): undefin
ed reference to `__imp_wglMakeCurrent'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0x1326): undefin
ed reference to `__imp_wglMakeCurrent'
c:/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/4.7.0/../../../../x86_64-w64-mingw3
2/lib/../lib/libglfw3.a(wgl_context.c.obj):wgl_context.c:(.text+0x143a): undefin
ed reference to `__imp_wglGetProcAddress'
collect2.exe: error: ld returned 1 exit status

C:\Users\Public\Documents\ACADEMICS\Personal Library\OpenGL-tutorial_v0014_33\Op
enGL-tutorial_v0014_33\tutorial04_colored_cube>
Was it helpful?

Solution

As the output says add "#define GLM_FORCE_RADIANS" to remove the glm warning message, but that seems to be just a warning.

The problem is in GLFW. Try moving -lopengl32 and -lglu32 after -lglfw3. Also, I once had trouble building some tutorials (maybe the same you are) because they were using a different version of GLFW. Try To link with GLFW2.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top