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

qtwebengine fails to build on aarch64 because of duplicate defines inside chromium

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: P2: Important
    • Resolution: Done
    • Affects Version/s: 5.7.0 Alpha
    • Fix Version/s: 5.7.0 RC
    • Component/s: WebEngine
    • Labels:
      None
    • Environment:
      gcc 5.3, odroid C2, eglfs plugin, aarch64
    • Commits:
      7933be051938a2815ed44563d26126e5d4a40b06 (qtwebengine) 06cde1e95d92936e5cf5f1dbd6c8aac8862eb0b5 (qtwebengine-chromium)

      Description

      I am building qt with gcc 5.3 on an aarch64 device equipped with a Mali GPU (Odroid C2).

      The full build works about right, but there is a build error in webengine near the end

      /qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/gpu/gpu_main.cc -o obj/src/3rdparty/chromium/content/gpu/content_gpu.gpu_main.o
      In file included from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/third_party/mesa/src/include/GL/gl.h:2086:0,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/ui/gl/gl_bindings.h:13,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/gl_utils.h:14,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/texture_manager.h:20,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/common/gpu/media/gpu_video_decode_accelerator.h:19,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/gpu/gpu_main.cc:27:
      /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/third_party/mesa/src/include/GL/glext.h:6156:25: error: conflicting declaration 'typedef long int GLintptr'
      typedef signed long int GLintptr;
      ^
      In file included from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/context_group.h:17:0,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/common/gpu/gpu_command_buffer_stub.h:24,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/common/gpu/media/gpu_video_decode_accelerator.h:18,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/gpu/gpu_main.cc:27:
      /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/gles2_cmd_format.h:51:26: note: previous declaration as 'typedef khronos_intptr_t GLintptr'
      typedef khronos_intptr_t GLintptr;
      ^
      In file included from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/third_party/mesa/src/include/GL/gl.h:2086:0,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/ui/gl/gl_bindings.h:13,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/gl_utils.h:14,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/texture_manager.h:20,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/common/gpu/media/gpu_video_decode_accelerator.h:19,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/gpu/gpu_main.cc:27:
      /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/third_party/mesa/src/include/GL/glext.h:6157:25: error: conflicting declaration 'typedef long int GLsizeiptr'
      typedef signed long int GLsizeiptr;
      ^
      In file included from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/service/context_group.h:17:0,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/common/gpu/gpu_command_buffer_stub.h:24,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/common/gpu/media/gpu_video_decode_accelerator.h:18,
      from /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/content/gpu/gpu_main.cc:27:
      /home/longchair/LibreELEC.tv/build.PlexMediaPlayer-Odroid_C2.aarch64-7.0-devel/qt-5.7.0-alpha/qtwebengine/src/3rdparty/chromium/gpu/command_buffer/common/gles2_cmd_format.h:52:25: note: previous declaration as 'typedef khronos_ssize_t GLsizeiptr'
      typedef khronos_ssize_t GLsizeiptr;
      ^
      ninja: build stopped: subcommand failed.

      this issue seems close to this old one https://bugreports.qt.io/browse/QTBUG-44240 but i haven't been able to figure out the right fix. That issue didn't happen with qt 5.6.0

        Attachments

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

          Activity

            People

            Assignee:
            mibrunin Michael Bruning
            Reporter:
            longchair LongChair
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Gerrit Reviews

                There are no open Gerrit changes