Qt 應用之 MinGW編譯安裝GLEW

ps:在qt 下移植opengl的 glew 庫的時候遇到glew 鏈接報錯,需要自己用mingw 編譯 glew

步驟:

1. 下載源碼:

http://glew.sourceforge.net/index.html 

http://www.grhmedia.com/glew.html 

其中我下載使用的是 第二個鏈接中的mingw-glew-2.0.0 for 32 bit

2.  打開qt 的mingw 命令行窗口

如果文件夾沒有compile.bat, 自己新建一個如下

gcc -DGLEW_NO_GLU -O2 -Wall -W -Iinclude  -DGLEW_BUILD -o src/glew.o -c src/glew.c
gcc -nostdlib -shared -Wl,-soname,libglew32.dll -Wl,--out-implib,lib/libglew32.dll.a    -o lib/glew32.dll src/glew.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
ar cr lib/libglew32.a src/glew.o
gcc -DGLEW_NO_GLU -DGLEW_MX -O2 -Wall -W -Iinclude  -DGLEW_BUILD -o src/glew.mx.o -c src/glew.c
gcc -nostdlib -shared -Wl,-soname,libglew32mx.dll -Wl,--out-implib,lib/libglew32mx.dll.a -o lib/glew32mx.dll src/glew.mx.o -L/mingw/lib -lglu32 -lopengl32 -lgdi32 -luser32 -lkernel32
ar cr lib/libglew32mx.a src/glew.mx.o

進入到 下載解壓目錄下 執行compile.bat 

3. 然後 將lib中生成的 .a 文件添加到 你所需要的地方,我這裏是這樣的一個目錄

4.  將lib中生成的dll 拷貝到你的qt 安裝目錄的bin下 例如我的是:

5.  將源文件終的include 中的GL 文件夾拷貝到你需要的地方,我的如下:

6.  在你的工程中pro 中添加依賴和 lib鏈接

如下:

LIBS +=  -lopengl32 -lGLU32 -lGLUT
INCLUDEPATH += $$PWD/../3rdParty/Includes
DEPENDPATH += $$PWD/../3rdParty/Includes
LIBS += -LD:\kpan\workspace\test\3rdParty\Libs\  -lglew32 -lglew32mx

其中第一行不要忘了,起初我是沒添加,還是會報找不到鏈接庫,參考了國外一個哥們的解決方法:

Building GLEW 1.7.0 on Windows using MinGW

7. 然後就可以用glew 的函數了。不過qt 中還是推薦用qt 封裝好的openglfunction 更方便,而不要再使用glew 庫。這樣可移植性會更好一點。

發佈了98 篇原創文章 · 獲贊 146 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章