[SOLVED] Qt5.2.0 + VS2010 + OpenGL: qopengldebug.h(93): error C2208: 'QFlags<Enum>' : no members defined using this type



  • Working on porting my Qt4 + OpenGL code. In the first file that includes OpenGL headers (Windows, OpenGL, GLM) I get compile errors. The first error was solved with the '#define NOMINMAX', but this one is a little more complex. I'm building w/ CMake 2.8.12.1, in part:
    @
    find_package( OpenGL REQUIRED )
    find_package( Qt5Widgets REQUIRED )
    find_package( Qt5OpenGL REQUIRED )
    ...
    qt5_use_modules( client_app Widgets OpenGL )
    @

    The error start:
    @
    1>d:\dev\qt\5.2.0\qtbase\include\qtgui../../src/gui/opengl/qopengldebug.h(93): error C2208: 'QFlags<Enum>' : no members defined using this type
    1> with
    1> [
    1> Enum=QOpenGLDebugMessage::Type
    1> ]
    1>d:\dev\qt\5.2.0\qtbase\include\qtgui../../src/gui/opengl/qopengldebug.h(143): error C2589: '::' : illegal token on right side of '::'
    1>d:\dev\qt\5.2.0\qtbase\include\qtgui../../src/gui/opengl/qopengldebug.h(143): error C2059: syntax error : '::'
    1>d:\dev\qt\5.2.0\qtbase\include\qtgui../../src/gui/opengl/qopengldebug.h(143): error C2039: 'enum_type' : is not a member of '`global namespace''
    @

    I am rendering using OpenGL myself via a QGLWidget derived class and CGFx, all of which worked fine with Qt 4.

    Any suggestions?



  • Moving #include <QtOpenGL> first fixed this, I'm guessing an OpenGL or GLM header was included before <QtOpenGL>.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.