Установка GLM - MinGW 64

Я считаю, что я делаю что-то не так, потому что все, что я пытаюсь сделать, это скомпилировать учебник 4 из учебников opengl. Я считаю, что я продолжаю получать много ошибок, связанных с GLM, и нуждаюсь в помощи, чтобы исправить это. Это ошибка, которую я получаю, когда пытаюсь ее скомпилировать (я думаю, что я установил все остальное также правильно):

спецификации MINGW 64, Windows 7, я знаю, GLFW работает. не уверен насчет глюу, но я не вижу проблем с глюу. Я поместил его в заголовочный файл glm в нужной папке, снова и снова.

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>

1 ответ

Решение

Как видно из вывода, добавьте "#define GLM_FORCE_RADIANS", чтобы удалить предупреждающее сообщение glm, но это всего лишь предупреждение.

Проблема в GLFW. Попробуйте переместить -lopengl32 и -lglu32 после -lglfw3. Кроме того, у меня когда-то были проблемы с созданием некоторых учебных пособий (возможно, таких же, как и вы), потому что они использовали другую версию GLFW. Попробуйте связать с GLFW2.

Другие вопросы по тегам