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

HAVE_egl_x11 test fails with libglvnd 1.3.4

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 6.2.1, 6.3.0 Alpha
    • 6.2.0 Beta4
    • GUI: OpenGL
    • None
    • Linux x86_64
    • Linux/X11
    • 4cc5428548cb8ab973e4b0281dd123d59bfaf6a0 (qt/qtbase/dev) 5c7b3db32bf383afa00050370222f39e0f3083ca (qt/qtbase/6.2)

    Description

      With ibglvnd 1.3.4, HAVE_egl_x11 test fails so the xcb-egl plugin is not compiled

      Performing C++ SOURCE FILE Test HAVE_egl_x11 failed with the following output:
      Change Dir: /build/qt6-base/src/build/CMakeFiles/CMakeTmpRun Build Command(s):/usr/bin/ninja cmTC_a934f && [1/2] Building CXX object CMakeFiles/cmTC_a934f.dir/src.cxx.o
      FAILED: CMakeFiles/cmTC_a934f.dir/src.cxx.o 
      /usr/bin/c++ -DHAVE_egl_x11  -D_FORTIFY_SOURCE=2 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt  -fPIE -std=gnu++17 -o CMakeFiles/cmTC_a934f.dir/src.cxx.o -c /build/qt6-base/src/build/CMakeFiles/CMakeTmp/src.cxx
      In file included from /usr/include/EGL/egl.h:20,
                       from /build/qt6-base/src/build/CMakeFiles/CMakeTmp/src.cxx:6:
      /build/qt6-base/src/build/CMakeFiles/CMakeTmp/src.cxx: In function 'int main()':
      /build/qt6-base/src/build/CMakeFiles/CMakeTmp/src.cxx:12:16: error: invalid conversion from 'EGLNativeDisplayType' {aka 'void*'} to 'Display*' [-fpermissive]
         12 | Display *dpy = EGL_DEFAULT_DISPLAY;
            |                ^~~~~~~~~~~~~~~~~~~
            |                |
            |                EGLNativeDisplayType {aka void*}
      /build/qt6-base/src/build/CMakeFiles/CMakeTmp/src.cxx:14:7: error: invalid conversion from 'EGLNativeDisplayType' {aka 'void*'} to 'Display*' [-fpermissive]
         14 | dpy = egldpy;
            |       ^~~~~~
            |       |
            |       EGLNativeDisplayType {aka void*}
      ninja: build stopped: subcommand failed.
      Source file was:
       // Check if EGL is compatible with X. Some EGL implementations, typically on
      // embedded devices, are not intended to be used together with X. EGL support
      // has to be disabled in plugins like xcb in this case since the native display,
      // window and pixmap types will be different than what an X-based platform
      // plugin would expect.
      #include <EGL/egl.h>
      #include <X11/Xlib.h>int main(void)
      {
          /* BEGIN TEST: */
      Display *dpy = EGL_DEFAULT_DISPLAY;
      EGLNativeDisplayType egldpy = XOpenDisplay("");
      dpy = egldpy;
      EGLNativeWindowType w = XCreateWindow(dpy, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
      XDestroyWindow(dpy, w);
      XCloseDisplay(dpy);
          /* END TEST: */
          return 0;
      } 

      Attachments

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

        Activity

          People

            lagocs Laszlo Agocs
            arojas Antonio Rojas
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes