OpenGL fixed function in Qt 5.7.0 Build Issue
-
I'm trying to "upgrade" a complex OpenGL app that I've build using Qt 4.8.6 to Qt 5.7.0 . I've done this successfully on Mac OSX El Capitan, but have problems on Windows 7 using mingw. Unless I add LIBS += -lglu32 -lopengl32 -lfreeglut I can't get the program to link with undefined reference errors. When I add the LIBS, the code builds, but nothing works. I also use QT += opengl.
I suspect that there must be some library conflict, but am at a loss with it.
Can anyone shed some light on the problem or provide an example w/ .pro file that shows the correct configuration for getting the fixed function stuff to work with the Qt 5.7.0 version.
Please, no replies about using shaders. I know that I need to get there, but I need this first step.
-
@Wild-Bill Was your windows Qt built with opengl support? You should definitely not need to links the libs with
LIBS +=
line.Can you show the build log with errors?
-
As stated in the original post QT += opengl should give the opengl support. Without the LIBS += line there is over 800 undefined references. I'm not going to post that. Note that I said the code builds fine on Mac. There must be an environment issue causing this. I just can't put my finger on it.
-
@Wild-Bill There is definitely an issue, and more than likely in your project (but possibly your environment). But without anything to look at I have no way of helping you.
Without a project file and build log here are my best guesses:
- you are mixing libs with incompatible architectures. Very common. Using MSVC built something with mingw built something else, resulting in undefined references.
- You are mixing 32 and 64 bit binaries/libs.
- You have a project setting that works on OSX but is invalid for windows. Or a specific macx:BLAH setting that you missed a comparable win32:BLAH for.
That's the best I can do without anything to look at. I wish you luck, it should be pretty easy to find.
-
@ambershark
I can look for the build log tomorrow; its getting late in the day for me. Is it a separate file or just what appears in the Qt Creator compile window? I haven't seen any extra files in the build directory. -
@Wild-Bill What appears in the build window, or you can run the build on the command line and redirect that to a file to post.
Also post your *.pro files (or CMakeLists.txt if you use cmake).
And make sure to look into whether you are mixing binaries or not. I'm guessing you might be as that is one of the usual culprits.
-
@ambershark I'm not seeing anything on this forum that lets me upload a file. Is it okay to paste into the compose window?
-
Here is the pro file:
DEFINES += "USE_PLT=0"
TARGET = MyViz
QT += widgets
openglLIBS += -lfreeglut LIBS += -lglu32 LIBS += -lopengl32
DEFINES += USE_LINEOUT
RESOURCES = tranzviz.qrc
TEMPLATE = app
SOURCES += main.cpp
mainwindow.cpp
gl3Dwidget.cpp
control3d.cpp
readFileGmv.cpp
glAxes.cpp
setRGBcolor.cpp
utilities.cpp
mytablebutton.cpp
myradiobutton.cpp
partchooserdialog.cpp
mytablecheck.cpp
myspinbox.cpp
legendPainter.cpp
eeoutReadFile.cpp
materialdialog.cpp
imageview.cpp
elementdialog.cpp
boundingboxdialog.cpp
helper.cpp
legendGlObject.cpp
isoWidget.cpp
cutaway.cpp
skdTree.cpp
gridcell.cpp
summarywindow.cpp
settings.cpp
simplecrypt.cpp
sectorplot.cpp
sectorglobject.cpp
umObject.cpp
abaqusReadFile.cpp
unstructuredmesh.cpp
annotatewindow.cpp
myqwidget.cpp
decoration.cpp
scales.cpp
mytextwindow.cppHEADERS += mainwindow.h
gl3Dwidget.h
control3d.h
unstructuredmesh.h
readFileGmv.h
glAxes.h
setRGBcolor.h
utilities.h
mytablebutton.h
myradiobutton.h
partchooserdialog.h
mytablecheck.h
myspinbox.h
legendPainter.h
eeoutReadFile.h
materialdialog.h
imageview.h
elementdialog.h
boundingboxdialog.h
helper.h
legendGlObject.h
isoWidget.h
cutaway.h
skdTree.h
gridcell.h
summarywindow.h
settings.h
ComplexNumber.h
pixmaps.h
simplecrypt.h
sectorplot.h
sectorglobject.h
umObject.h
abaqusReadFile.h
annotatewindow.h
myqwidget.h
decoration.h
scales.h
mytextwindow.hHEADERS += lineOut.h
SOURCES += lineOut.cpp
-
Here is the end of the compile output that show how source files are compiled, etc. :
C:\Qt\Qt5.7.0\5.7\mingw53_32\bin\moc.exe -DUNICODE -DUSE_QWT=0 -DUSE_LINEOUT -DQT_QML_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -D__GNUC__ -DWIN32 -IC:/Qt/Qt5.7.0/5.7/mingw53_32/mkspecs/win32-g++ -IC:/Users/RogerAdmin/Programs/TranzViz051B -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtOpenGL -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtWidgets -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtGui -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtANGLE -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/7.3.0/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/usr/include -I"/System/Library/Frameworks (framework directory)" -I"/Library/Frameworks (framework directory)" mytextwindow.h -o debug\moc_mytextwindow.cpp
g++ -c -pipe -fno-keep-inline-dllexport -g -std=gnu++11 -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DUSE_QWT=0 -DUSE_LINEOUT -DQT_QML_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I. -I........\Qt\Qt5.7.0\5.7\mingw53_32\include -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtOpenGL -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtWidgets -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtGui -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtANGLE -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtCore -Idebug -I........\Qt\Qt5.7.0\5.7\mingw53_32\mkspecs\win32-g++ -o debug\moc_mytextwindow.o debug\moc_mytextwindow.cpp
C:\Qt\Qt5.7.0\5.7\mingw53_32\bin\moc.exe -DUNICODE -DUSE_QWT=0 -DUSE_LINEOUT -DQT_QML_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -D__GNUC__ -DWIN32 -IC:/Qt/Qt5.7.0/5.7/mingw53_32/mkspecs/win32-g++ -IC:/Users/RogerAdmin/Programs/TranzViz051B -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtOpenGL -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtWidgets -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtGui -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtANGLE -IC:/Qt/Qt5.7.0/5.7/mingw53_32/include/QtCore -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/7.3.0/include -I/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include -I/usr/include -I"/System/Library/Frameworks (framework directory)" -I"/Library/Frameworks (framework directory)" lineOut.h -o debug\moc_lineOut.cpp
g++ -c -pipe -fno-keep-inline-dllexport -g -std=gnu++11 -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DUSE_QWT=0 -DUSE_LINEOUT -DQT_QML_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I. -I........\Qt\Qt5.7.0\5.7\mingw53_32\include -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtOpenGL -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtWidgets -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtGui -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtANGLE -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtCore -Idebug -I........\Qt\Qt5.7.0\5.7\mingw53_32\mkspecs\win32-g++ -o debug\moc_lineOut.o debug\moc_lineOut.cpp
In file included from debug../lineOut.h:15:0,
from debug\moc_lineOut.cpp:9:
debug../pixmaps.h:4:20: warning: 'print_xpm' defined but not used [-Wunused-variable]
static const char *print_xpm[] =
^
debug../pixmaps.h:54:20: warning: 'zoom_xpm' defined but not used [-Wunused-variable]
static const char *zoom_xpm[] =
^
g++ -Wl,-subsystem,windows -mthreads -o debug\MyViz.exe object_script.MyViz.Debug -lmingw32 -LC:\Qt\Qt5.7.0\5.7\mingw53_32\lib C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libqtmaind.a -LC:\utils\postgresql\pgsql\lib -LC:\utils\my_sql\my_sql\lib -lshell32 -lfreeglut -lglu32 -lopengl32 C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5OpenGLd.a C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5Widgetsd.a C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5Guid.a C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5Cored.amingw32-make[1]: Leaving directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
20:24:36: The process "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe" exited normally.
20:24:36: Elapsed time: 03:55. -
@Wild-Bill This could just be a forum paste thing but your project file looks like the QT line is wrong.. it has opengl on the next line.. If it's not just a paste issue, try chaning that to:
QT += widgets opengl
Then can you post the build log from a windows one that is failing to link (and remove the specific LIBS+= lines for that build so I can see the actual error).
And finally, when you say if you include the LIBS += stuff it builds but "nothing works", what do you mean by that? Does the app not launch, is there an error? Anythign output on the command line?
-
-
Copy & paste error. opengl was associated with QT += correctly.
-
"Nothing works" Sorry for the confusion here. The window with the opengl canvas appears, but none of the menu items in the menubar work and the XYZ triad in the center of the canvas can't be rotated with the mouse.
-
I only installed the Mingw 32 version of Qt 5.7.0 on my Windows 7 box. If there is a 32-bit / 64-bit problem, it must be in the Qt libraries.
-
Compile output below when I remove the LIBS += -lfreeglut -lglu32 -lopengl32 lines. Can only enter some because of forum limits. Will add a 2nd post.
20:08:20: Starting: "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe" clean
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Debug clean
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
del debug\qrc_tranzviz.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\debug\qrc_tranzviz.cpp
del debug\moc_mainwindow.cpp debug\moc_gl3Dwidget.cpp debug\moc_control3d.cpp debug\moc_glAxes.cpp debug\moc_mytablebutton.cpp debug\moc_myradiobutton.cpp debug\moc_partchooserdialog.cpp debug\moc_mytablecheck.cpp debug\moc_myspinbox.cpp debug\moc_legendPainter.cpp debug\moc_materialdialog.cpp debug\moc_imageview.cpp debug\moc_elementdialog.cpp debug\moc_boundingboxdialog.cpp debug\moc_isoWidget.cpp debug\moc_cutaway.cpp debug\moc_summarywindow.cpp debug\moc_settings.cpp debug\moc_sectorplot.cpp debug\moc_annotatewindow.cpp debug\moc_myqwidget.cpp debug\moc_decoration.cpp debug\moc_scales.cpp debug\moc_mytextwindow.cpp debug\moc_lineOut.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\debug\moc_mainwindow.cpp
del debug\main.o debug\mainwindow.o debug\gl3Dwidget.o debug\control3d.o debug\readFileGmv.o debug\glAxes.o debug\setRGBcolor.o debug\utilities.o debug\mytablebutton.o debug\myradiobutton.o debug\partchooserdialog.o debug\mytablecheck.o debug\myspinbox.o debug\legendPainter.o debug\eeoutReadFile.o debug\materialdialog.o debug\imageview.o debug\elementdialog.o debug\boundingboxdialog.o debug\helper.o debug\legendGlObject.o debug\isoWidget.o debug\cutaway.o debug\skdTree.o debug\gridcell.o debug\summarywindow.o debug\settings.o debug\simplecrypt.o debug\sectorplot.o debug\sectorglobject.o debug\umObject.o debug\abaqusReadFile.o debug\unstructuredmesh.o debug\annotatewindow.o debug\myqwidget.o debug\decoration.o debug\scales.o debug\mytextwindow.o debug\lineOut.o debug\qrc_tranzviz.o debug\moc_mainwindow.o debug\moc_gl3Dwidget.o debug\moc_control3d.o debug\moc_glAxes.o debug\moc_mytablebutton.o debug\moc_myradiobutton.o debug\moc_partchooserdialog.o debug\moc_mytablecheck.o debug\moc_myspinbox.o debug\moc_legendPainter.o debug\moc_materialdialog.o debug\moc_imageview.o debug\moc_elementdialog.o debug\moc_boundingboxdialog.o debug\moc_isoWidget.o debug\moc_cutaway.o debug\moc_summarywindow.o debug\moc_settings.o debug\moc_sectorplot.o debug\moc_annotatewindow.o debug\moc_myqwidget.o debug\moc_decoration.o debug\moc_scales.o debug\moc_mytextwindow.o debug\moc_lineOut.o
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\debug\main.o
mingw32-make[1]: Leaving directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Release clean
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
del release\qrc_tranzviz.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\release\qrc_tranzviz.cpp
del release\moc_mainwindow.cpp release\moc_gl3Dwidget.cpp release\moc_control3d.cpp release\moc_glAxes.cpp release\moc_mytablebutton.cpp release\moc_myradiobutton.cpp release\moc_partchooserdialog.cpp release\moc_mytablecheck.cpp release\moc_myspinbox.cpp release\moc_legendPainter.cpp release\moc_materialdialog.cpp release\moc_imageview.cpp release\moc_elementdialog.cpp release\moc_boundingboxdialog.cpp release\moc_isoWidget.cpp release\moc_cutaway.cpp release\moc_summarywindow.cpp release\moc_settings.cpp release\moc_sectorplot.cpp release\moc_annotatewindow.cpp release\moc_myqwidget.cpp release\moc_decoration.cpp release\moc_scales.cpp release\moc_mytextwindow.cpp release\moc_lineOut.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\release\moc_mainwindow.cpp
del release\main.o release\mainwindow.o release\gl3Dwidget.o release\control3d.o release\readFileGmv.o release\glAxes.o release\setRGBcolor.o release\utilities.o release\mytablebutton.o release\myradiobutton.o release\partchooserdialog.o release\mytablecheck.o release\myspinbox.o release\legendPainter.o release\eeoutReadFile.o release\materialdialog.o release\imageview.o release\elementdialog.o release\boundingboxdialog.o release\helper.o release\legendGlObject.o release\isoWidget.o release\cutaway.o release\skdTree.o release\gridcell.o release\summarywindow.o release\settings.o release\simplecrypt.o release\sectorplot.o release\sectorglobject.o release\umObject.o release\abaqusReadFile.o release\unstructuredmesh.o release\annotatewindow.o release\myqwidget.o release\decoration.o release\scales.o release\mytextwindow.o release\lineOut.o release\qrc_tranzviz.o release\moc_mainwindow.o release\moc_gl3Dwidget.o release\moc_control3d.o release\moc_glAxes.o release\moc_mytablebutton.o release\moc_myradiobutton.o release\moc_partchooserdialog.o release\moc_mytablecheck.o release\moc_myspinbox.o release\moc_legendPainter.o release\moc_materialdialog.o release\moc_imageview.o release\moc_elementdialog.o release\moc_boundingboxdialog.o release\moc_isoWidget.o release\moc_cutaway.o release\moc_summarywindow.o release\moc_settings.o release\moc_sectorplot.o release\moc_annotatewindow.o release\moc_myqwidget.o release\moc_decoration.o release\moc_scales.o release\moc_mytextwindow.o release\moc_lineOut.o
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\release\main.o
mingw32-make[1]: Leaving directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
20:08:21: The process "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe" exited normally.
20:08:21: Configuration unchanged, skipping qmake step.
20:08:21: Starting: "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe"
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
g++ -c -pipe -fno-keep-inline-dllexport -g -std=gnu++11 -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DUSE_QWT=0 -DUSE_LINEOUT -DQT_QML_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I. -I........\Qt\Qt5.7.0\5.7\mingw53_32\include -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtOpenGL -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtWidgets -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtGui -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtANGLE -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtCore -Idebug -I........\Qt\Qt5.7.0\5.7\mingw53_32\mkspecs\win32-g++ -o debug\main.o main.cpp -
-
More of the compile output:
20:08:20: Starting: "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe" clean
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Debug clean
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
del debug\qrc_tranzviz.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\debug\qrc_tranzviz.cpp
del debug\moc_mainwindow.cpp debug\moc_gl3Dwidget.cpp debug\moc_control3d.cpp debug\moc_glAxes.cpp debug\moc_mytablebutton.cpp debug\moc_myradiobutton.cpp debug\moc_partchooserdialog.cpp debug\moc_mytablecheck.cpp debug\moc_myspinbox.cpp debug\moc_legendPainter.cpp debug\moc_materialdialog.cpp debug\moc_imageview.cpp debug\moc_elementdialog.cpp debug\moc_boundingboxdialog.cpp debug\moc_isoWidget.cpp debug\moc_cutaway.cpp debug\moc_summarywindow.cpp debug\moc_settings.cpp debug\moc_sectorplot.cpp debug\moc_annotatewindow.cpp debug\moc_myqwidget.cpp debug\moc_decoration.cpp debug\moc_scales.cpp debug\moc_mytextwindow.cpp debug\moc_lineOut.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\debug\moc_mainwindow.cpp
del debug\main.o debug\mainwindow.o debug\gl3Dwidget.o debug\control3d.o debug\readFileGmv.o debug\glAxes.o debug\setRGBcolor.o debug\utilities.o debug\mytablebutton.o debug\myradiobutton.o debug\partchooserdialog.o debug\mytablecheck.o debug\myspinbox.o debug\legendPainter.o debug\eeoutReadFile.o debug\materialdialog.o debug\imageview.o debug\elementdialog.o debug\boundingboxdialog.o debug\helper.o debug\legendGlObject.o debug\isoWidget.o debug\cutaway.o debug\skdTree.o debug\gridcell.o debug\summarywindow.o debug\settings.o debug\simplecrypt.o debug\sectorplot.o debug\sectorglobject.o debug\umObject.o debug\abaqusReadFile.o debug\unstructuredmesh.o debug\annotatewindow.o debug\myqwidget.o debug\decoration.o debug\scales.o debug\mytextwindow.o debug\lineOut.o debug\qrc_tranzviz.o debug\moc_mainwindow.o debug\moc_gl3Dwidget.o debug\moc_control3d.o debug\moc_glAxes.o debug\moc_mytablebutton.o debug\moc_myradiobutton.o debug\moc_partchooserdialog.o debug\moc_mytablecheck.o debug\moc_myspinbox.o debug\moc_legendPainter.o debug\moc_materialdialog.o debug\moc_imageview.o debug\moc_elementdialog.o debug\moc_boundingboxdialog.o debug\moc_isoWidget.o debug\moc_cutaway.o debug\moc_summarywindow.o debug\moc_settings.o debug\moc_sectorplot.o debug\moc_annotatewindow.o debug\moc_myqwidget.o debug\moc_decoration.o debug\moc_scales.o debug\moc_mytextwindow.o debug\moc_lineOut.o
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\debug\main.o
mingw32-make[1]: Leaving directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Release clean
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
del release\qrc_tranzviz.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\release\qrc_tranzviz.cpp
del release\moc_mainwindow.cpp release\moc_gl3Dwidget.cpp release\moc_control3d.cpp release\moc_glAxes.cpp release\moc_mytablebutton.cpp release\moc_myradiobutton.cpp release\moc_partchooserdialog.cpp release\moc_mytablecheck.cpp release\moc_myspinbox.cpp release\moc_legendPainter.cpp release\moc_materialdialog.cpp release\moc_imageview.cpp release\moc_elementdialog.cpp release\moc_boundingboxdialog.cpp release\moc_isoWidget.cpp release\moc_cutaway.cpp release\moc_summarywindow.cpp release\moc_settings.cpp release\moc_sectorplot.cpp release\moc_annotatewindow.cpp release\moc_myqwidget.cpp release\moc_decoration.cpp release\moc_scales.cpp release\moc_mytextwindow.cpp release\moc_lineOut.cpp
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\release\moc_mainwindow.cpp
del release\main.o release\mainwindow.o release\gl3Dwidget.o release\control3d.o release\readFileGmv.o release\glAxes.o release\setRGBcolor.o release\utilities.o release\mytablebutton.o release\myradiobutton.o release\partchooserdialog.o release\mytablecheck.o release\myspinbox.o release\legendPainter.o release\eeoutReadFile.o release\materialdialog.o release\imageview.o release\elementdialog.o release\boundingboxdialog.o release\helper.o release\legendGlObject.o release\isoWidget.o release\cutaway.o release\skdTree.o release\gridcell.o release\summarywindow.o release\settings.o release\simplecrypt.o release\sectorplot.o release\sectorglobject.o release\umObject.o release\abaqusReadFile.o release\unstructuredmesh.o release\annotatewindow.o release\myqwidget.o release\decoration.o release\scales.o release\mytextwindow.o release\lineOut.o release\qrc_tranzviz.o release\moc_mainwindow.o release\moc_gl3Dwidget.o release\moc_control3d.o release\moc_glAxes.o release\moc_mytablebutton.o release\moc_myradiobutton.o release\moc_partchooserdialog.o release\moc_mytablecheck.o release\moc_myspinbox.o release\moc_legendPainter.o release\moc_materialdialog.o release\moc_imageview.o release\moc_elementdialog.o release\moc_boundingboxdialog.o release\moc_isoWidget.o release\moc_cutaway.o release\moc_summarywindow.o release\moc_settings.o release\moc_sectorplot.o release\moc_annotatewindow.o release\moc_myqwidget.o release\moc_decoration.o release\moc_scales.o release\moc_mytextwindow.o release\moc_lineOut.o
Could Not Find C:\Users\RogerAdmin\Programs\TranzViz051B\release\main.o
mingw32-make[1]: Leaving directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
20:08:21: The process "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe" exited normally.
20:08:21: Configuration unchanged, skipping qmake step.
20:08:21: Starting: "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe"
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
g++ -c -pipe -fno-keep-inline-dllexport -g -std=gnu++11 -frtti -Wall -Wextra -fexceptions -mthreads -DUNICODE -DUSE_QWT=0 -DUSE_LINEOUT -DQT_QML_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I. -I........\Qt\Qt5.7.0\5.7\mingw53_32\include -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtOpenGL -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtWidgets -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtGui -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtANGLE -I........\Qt\Qt5.7.0\5.7\mingw53_32\include\QtCore -Idebug -I........\Qt\Qt5.7.0\5.7\mingw53_32\mkspecs\win32-g++ -o debug\main.o main.cpp( more of the same )
Makefile.Debug:265: recipe for target 'debug\TranzViz.exe' failed
mingw32-make[1]: Leaving directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
Makefile:34: recipe for target 'debug' failed
20:12:11: The process "C:\Qt\Qt5.7.0\Tools\mingw530_32\bin\mingw32-make.exe" exited with code 2.
Error while building/deploying project TranzViz (kit: Desktop Qt 5.7.0 MinGW 32bit)
When executing step "Make"
20:12:11: Elapsed time: 03:51. -
@Wild-Bill So I don't see any actual errors in that build log.. I think the "more of the same" cut, cut out the useful part I needed, lol.
There shouldn't be a 32/64 bit problem if you have mingw32, Qt built with the same, and your app being built with mingw32 as well.
I figured it was a copy/past error, that would be too easy. ;)
While I wait on the actual errors from the build log (you can use something like pastebin to paste the whole thing if you want and put a link here), I will think about what might cause those issues with opengl.
One more suggestion, have you tried a basic opengl program with Qt in windows? Not your large one but just try to duplicate the broken stuff with a simple app? Even try the example one(s) with Qt.
-
This is representative of the errors.
C:/Qt/Qt5.7.0/Tools/mingw530_32/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'C:/Users/RogerAdmin/Programs/TranzViz051B'
g++ -Wl,-subsystem,windows -mthreads -o debug\TranzViz.exe object_script.TranzViz.Debug -lmingw32 -LC:\Qt\Qt5.7.0\5.7\mingw53_32\lib C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libqtmaind.a -LC:\utils\postgresql\pgsql\lib -LC:\utils\my_sql\my_sql\lib -lshell32 C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5OpenGLd.a C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5Widgetsd.a C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5Guid.a C:\Qt\Qt5.7.0\5.7\mingw53_32\lib\libQt5Cored.a
./debug\main.o: In functionglutInit_ATEXIT_HACK': C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to
_imp____glutInitWithExit@12'
./debug\main.o: In functionglutCreateWindow_ATEXIT_HACK': C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to
_imp____glutCreateWindowWithExit@8'
./debug\main.o: In functionglutCreateMenu_ATEXIT_HACK': C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to
_imp____glutCreateMenuWithExit@8'
./debug\mainwindow.o: In functionglutInit_ATEXIT_HACK': C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to
_imp____glutInitWithExit@12'
./debug\mainwindow.o: In functionglutCreateWindow_ATEXIT_HACK': C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to
_imp____glutCreateWindowWithExit@8'
./debug\mainwindow.o: In functionglutCreateMenu_ATEXIT_HACK': C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to
_imp____glutCreateMenuWithExit@8'C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to
_imp____glutCreateMenuWithExit@8' ./debug\moc_isoWidget.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_isoWidget.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_isoWidget.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to_imp____glutCreateMenuWithExit@8' ./debug\moc_cutaway.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_cutaway.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_cutaway.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to_imp____glutCreateMenuWithExit@8' ./debug\moc_settings.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_settings.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_settings.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to_imp____glutCreateMenuWithExit@8' ./debug\moc_sectorplot.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_sectorplot.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_sectorplot.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to_imp____glutCreateMenuWithExit@8' ./debug\moc_decoration.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_decoration.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_decoration.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to_imp____glutCreateMenuWithExit@8' ./debug\moc_scales.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_scales.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_scales.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to_imp____glutCreateMenuWithExit@8' ./debug\moc_lineOut.o: In function
glutInit_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:620: undefined reference to_imp____glutInitWithExit@12' ./debug\moc_lineOut.o: In function
glutCreateWindow_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:622: undefined reference to_imp____glutCreateWindowWithExit@8' ./debug\moc_lineOut.o: In function
glutCreateMenu_ATEXIT_HACK':
C:/Qt/Qt5.7.0/5.7/mingw53_32/include/GLUT/freeglut_std.h:624: undefined reference to `_imp____glutCreateMenuWithExit@8'
collect2.exe: error: ld returned 1 exit status
mingw32-make[1]: *** [debug\TranzViz.exe] Error 1
mingw32-make: *** [debug] Error 2 -
@Wild-Bill Ok so that looks like your problems are with the GLUT library which isn't part of Qt. So that definitely needs to be added with the -lglu32, etc that you had.
So your real problem here is that things are not working properly, not that they aren't building properly.
Here is an old thread talking about the glut stuff:
forum.qt.io/topic/7003/opengl-doesn-t-work-with-qtIf I were you since this thread got bogged down with build issues I would start a new thread talking specifically about the issues you are having with your opengl Qt program once it compiles. And while I'm good with compilation issues, I can't really help you with opengl at all, never really used it for any app I wrote.
Also I would try my previous recommendation of getting a basic opengl application working correctly. This will help you rule out the windows and build issues. Then you can focus on why your particular opengl stuff isn't working armed with "I know this works on my system with another app" type of info.
-
@ambershark
Okay. So it took a little time to extract the bare essence of a basic opengl app from my complex one. It builds and runs as expected when the glu32 and opengl32 are added to LIBS.Now my task is to rebuild piece by piece the complex app. Maybe along the way I will discover which of the myriad pieces was causing the original problem. I was trying to avoid this rework since the original app is +50k lines of code.
Thanks ambershark for your suggestions and encouragements along the way. I was happy to have you weigh in.
-
@Wild-Bill No problem, happy to help. Just wish I knew opengl so I could give you some insight on that.
50k isn't too bad though. I got handed a 500k application I had to deal with for a job one time. With nobody around that wrote it.
It was unfinished and had tons of bugs. It was not a great experience, lol.
Oh and post back here when you find the problem in case others experience something similar. :)