Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-51324

Qt5.6.0-rc fails to build on windows with -opengl dynamic

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P1: Critical
    • 5.6.0
    • 5.6.0 RC
    • Packaging & Installer
    • None
    • Windows 10 x64, Visual Studio 2015
    • 38944d662eda76ecc57cb1fd61da42775fa52f6f

    Description

      I ran into a problem building Qt5.6.0-rc on Windows that was not present in the beta, after many hours of debugging and looking at cl.exe /E output I came to the conclusion that something is wrong with the packaged includes/QtGui/QtGui file.

      The build error I got was:

      
      cl -c -Yc -Fp.pch\release\Qt5OpenGL_pch.pch -Fo.pch\release\Qt5OpenGL_pch.obj -nologo -Zc:wchar_t -FS -Zc:strictStrings -Zc:throwingNew -O2 -MD -Zi -D_HAS_EXCEPTIONS=0 -GR -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 /Fd..\..\lib\Qt5OpenGL.pdb -DUNICODE -DWIN32 -DWIN64 -DQT_NO_USING_NAMESPACE -DQT_BUILD_OPENGL_LIB -DQT_BUILDING_QT -D_CRT_SECURE_NO_WARNINGS -D_USE_MATH_DEFINES -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x040800 -DQT_NO_EXCEPTIONS -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DNDEBUG -I. -Ic:\Jenkins\pmp-qt-deps\BUILD_TAG\windows-x86_64\output\konvergo-qt-windows-x86_64-release-5252e32\include -I..\..\include -I..\..\include\QtOpenGL -I..\..\include\QtOpenGL\5.6.0 -I..\..\include\QtOpenGL\5.6.0\QtOpenGL -Itmp -I..\..\include\QtWidgets\5.6.0 -I..\..\include\QtWidgets\5.6.0\QtWidgets -I..\..\include\QtGui\5.6.0 -I..\..\include\QtGui\5.6.0\QtGui -I..\..\include\QtCore\5.6.0 -I..\..\include\QtCore\5.6.0\QtCore -I..\..\include\QtWidgets -I..\..\include\QtGui -I..\..\include\QtANGLE -I..\..\include\QtCore -I.moc\release -I..\..\mkspecs\win32-msvc2015 -TP ..\..\include\QtOpenGL\QtOpenGLDepends
      QtOpenGLDepends
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(22): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(22): error C2146: syntax error: missing ';' before identifier 'GLint64'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(22): warning C4091: '': ignored on left of 'int64_t' when no variable is declared
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(23): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(23): error C2146: syntax error: missing ';' before identifier 'GLuint64'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(23): warning C4091: '': ignored on left of 'uint64_t' when no variable is declared
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(244): error C2143: syntax error: missing ')' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(244): error C2143: syntax error: missing ';' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(244): error C2059: syntax error: ')'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(244): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(245): error C2143: syntax error: missing ')' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(245): error C2143: syntax error: missing ';' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(245): error C2059: syntax error: ')'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(245): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(314): error C2143: syntax error: missing ')' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(314): error C2143: syntax error: missing ';' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(314): error C2059: syntax error: ')'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(314): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(315): error C2143: syntax error: missing ')' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(315): error C2143: syntax error: missing ';' before '*'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(315): error C2059: syntax error: ')'
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(315): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
      c:\temp\qt\qtbase\include\qtgui\../../src/gui/opengl/qopengles2ext.h(328): error C2059: syntax error: '<parameter-list>'jom: C:\temp\qt\qtbase\src\opengl\Makefile.Release [.pch\release\Qt5OpenGL_pch.obj] Error 2
      

      This seems to be because qopengles2ext.h is included in QtGui/QtGui. This was not the case in the beta.

      This also works when building from Git because the generated file does not contain that header. My guess is that this is because the generated headers in the packaged source is not configured for dynamic OpenGL.

      I would consider this a blocker, I can patch this file out or just use the include from the beta, but this is a problem for anyone trying to use the source package and build a dynamic build.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            shausman Simon Hausmann
            tobias_hieta tobias_hieta
            Votes:
            3 Vote for this issue
            Watchers:
            12 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes