Qt-OpenGL编译静态

Qt-OpenGL编译静态,qt,opengl,static-libraries,Qt,Opengl,Static Libraries,我用qt和opengl()编写了一个小应用程序,现在我想静态编译它 所以我下载了Qt库,并用这个静态编译它 我在pro文件cd的项目位置添加了一行CONFIG+=static,并点击: make clean qmake -config release make 但我得到了一些未定义的参考,如: qpixmapdata_gl.cpp:-1: error: undefined reference to `_imp___Z14qt_defaultDpiYv' 我做错了什么?我是否需要将LIB添加到

我用qt和opengl()编写了一个小应用程序,现在我想静态编译它

所以我下载了Qt库,并用这个静态编译它

我在pro文件cd的项目位置添加了一行CONFIG+=static,并点击:

make clean
qmake -config release
make
但我得到了一些未定义的参考,如:

qpixmapdata_gl.cpp:-1: error: undefined reference to `_imp___Z14qt_defaultDpiYv'
我做错了什么?我是否需要将LIB添加到pro文件中?我如何做到这一点,更重要的是我应该使用什么LIB

我尝试了类似的方法,但没有结果:

LIBS += C:\Qt\4.7.3\bin\QtOpenGL4.dll

我看到符号是在qfont.cpp中定义的,所以它应该在那里。我想补充一点:

QT += gui
在你的.pro文件中。我想你需要:

QT += core
还有

编辑:还要检查符号是否包含在libQtGui.lib和用于编译的行中。
您是否也使用相同的编译器?报道的破损似乎是海湾合作委员会的。您是否使用mingw或nmake编译了Qt库?

默认情况下包括核心和gui模块,您不需要指定它-请参阅我想他们打算在使用与Qt绑定的默认规范文件时将其作为默认值。如果使用自定义规范文件,或者可能与默认值不同,则这些值可以由设计师决定,如果尚未包含,则必须包含。我使用mingw编译了库和应用程序。添加gui和core没有改变任何内容。您还尝试检查符号是否包含在libQtGui.lib和用于编译的行中是什么意思?尝试使用一个实用程序来显示库中定义的符号(mingw应该有自己的nm命令来执行此操作),这样您就可以检查符号qt_defaultDpiY在哪里以及损坏的原因是什么。如果您使用的是mingw,那么编译时传递给mingw的参数是什么?这样我们就可以看到它是如何与什么联系的。