参考:https://blog.csdn.net/u014546553/article/details/73613691
1.首先需要去opengl的官网下载glut库:得到五个文件(glut32.lib、glut.lib、glut.dll、glut32.dll、glut.h)http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
2、把这5个文件连同文件夹,一起拷贝到工程目录下:
3、在pro文件中添加:
LIBS += -L$$PWD/glut37beta/ -lglut32
注意:(1)-lglut32前面有个空格
(2)如果你的工程中也添加了其他的lib库,可以合并写到一行里,例如:
LIBS +=-lopengl32 -lglu32 -L$$PWD/glut37beta/ -lglut32
(3)这一行链接代码中的文件夹的名字要和你命名的一致。上面我起的文件夹名字是glut37beta。
对这行链接代码的更多解析,见下文附录。
4、在需要用到glut库函数的文件中:#include "glut37beta/glut.h"。完成。
如果添加完还是报错,可以试试:右击工程名->清除->执行qmake->运行。
-------------------------------------------------------------------------------------------------------------------------
后记:
上面的方法只对一个工程有效,要想在别的工程中引用glut,就得再做一遍上述步骤,为了一劳永逸,建议这么做:
1、把下载下来的glut.lib、glut32.lib拷贝到QT安装目录下对应编译器(msvc或者minGW)目录下的lib文件夹中。这一步的作用是,可以省去在pro文件中添加lib目录这一步,也即无需写 -L$$PWD/glut37beta/了,只写LIBS += -lglut32即可。
2、把下载的glut.dll、glut32.dll拷贝到C:\Windows\System32和C:\Windows\SysWOW64(32位电脑没这个文件夹)
3、把下载的glut.h拷贝到安装目录下对应编译器目录下include/QtOpenGL文件夹下。这一步的作用是,无需在pro文件中添加
INCLUDEPATH += $$PWD/glut37beta这句代码了。这样我们可以直接在代码中#include <QtOpenGL/glut.h>就能用该库函数了。
附录:
LIBS += -L$$PWD/glut37beta/ -lglut32
这样代码中,+=代表增加内容,-L代表添加路径,后面不带空格紧跟路径,-l代表添加库文件,后面不带空格紧跟lib文件名(不含后缀),-L和-l不分先后顺序,写成这样也是对的:。
$$PWD代表当前的工程根目录(Print Work Directory)。
新版的QT安装时为了省事,很多人都是一口气把所有的编译器都装上了,像我这样的:
这样的话,复制glut库文件、头文件时,需要复制到每一个编译器对应的子目录下