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

i686 build error: GLsizeiptr/GLintptr have declarations conflicting <GL/glext.h>

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P3: Somewhat important
    • 5.5.0
    • 5.4.1
    • WebEngine
    • None
    • GNU Guix commit 45191970b3

    Description

      Qt builds of GNU Guix fail since libxshmfence was added to Qt's build environment.

      (It was added as a side-effect because it's a run-time dependency of Mesa as per Mesa's gl.pc pkg-config file, so it's now added to all environments to which the Mesa package is added.)

      The build error is that some files (for instance "qtwebengine/src/core/gl_surface_qt.cpp") indirectly (but unconditionally) include both <GL/glext.h> and "qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/gles2_cmd_format.h" which leads to conflicting typedefs because the former defines GLsizeiptr and GLintptr as ptrdiff_t, whereas the latter defines them as "Khronos platform" types as is done for GLES. In short, said files erroneously include both GL and GLES-specific headers.

      The tail of the build log is attached.

      I don't know how this relates to libxshmfence being in the build environment, but it's certainly what triggers the bug, since I cannot reproduce it if I change absolutely nothing except for taking libxshmfence out of the build environment.

      How to reproduce on Guix:

      Since Guix is a purely functional package manager, you should be able to reproduce the same environment by building from the commit 45191970b3 and running "./pre-inst-env guix build -K --system=i686-linux qt" from the build directory (or without the "./pre-inst-env" part if you install it). Please see Guix's manual on how to authorize binary packages from hydra.gnu.org; otherwise everything starting from the compiler will be built locally on your machine.

      Attachments

        1. qt-guix-build-log.txt
          25 kB
          Taylan Ulrich Bayırlı/Kammer
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            mibrunin Michael Bruning
            TaylanUB Taylan Ulrich Bayırlı/Kammer
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes