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

QT Multimedia build failure MSYS2 MinGW32 (gcc 7.3.0)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 5.12.1
    • 5.11.1
    • Multimedia
    • None
    • MSYS2 MinGW32, GCC 7.3.0.
    • Windows

    Description

      Have same issue as in #63905 when building Qt opensource 5.11.1 on latest MinGW32 avaliable in MSYS2.

      In file included from ../common/evr/evrvideowindowcontrol.h:45:0,
                       from player/directshowevrvideowindowcontrol.h:43,
                       from player/directshowplayerservice.cpp:63:
      ../common/evr/evrdefs.h:87:16: error: redefinition of 'struct MFVideoNormalizedRect'
       typedef struct MFVideoNormalizedRect {
                      ^~~~~~~~~~~~~~~~~~~~~
      In file included from ../common/evr/evrdefs.h:45:0,
                       from ../common/evr/evrvideowindowcontrol.h:45,
                       from player/directshowevrvideowindowcontrol.h:43,
                       from player/directshowplayerservice.cpp:63:
      C:/msys64/mingw32/i686-w64-mingw32/include/evr.h:291:16: note: previous definition of 'struct MFVideoNormalizedRect'
       typedef struct MFVideoNormalizedRect {
                      ^~~~~~~~~~~~~~~~~~~~~
      In file included from ../common/evr/evrvideowindowcontrol.h:45:0,
                       from player/directshowevrvideowindowcontrol.h:43,
                       from player/directshowplayerservice.cpp:63:
      ../common/evr/evrdefs.h:92:3: error: conflicting declaration 'typedef int MFVideoNormalizedRect'
       } MFVideoNormalizedRect;
         ^~~~~~~~~~~~~~~~~~~~~
      In file included from ../common/evr/evrdefs.h:45:0,
                       from ../common/evr/evrvideowindowcontrol.h:45,
                       from player/directshowevrvideowindowcontrol.h:43,
                       from player/directshowplayerservice.cpp:63:
      C:/msys64/mingw32/i686-w64-mingw32/include/evr.h:296:3: note: previous declaration as 'typedef struct MFVideoNormalizedRect MFVideoNormalizedRect'
       } MFVideoNormalizedRect;
         ^~~~~~~~~~~~~~~~~~~~~
      

      /mingw32/i686-w64-mingw32/include/evr.h contain that typedef with definition of MFVideoNormalizedRect, so I can bypass that error by adding check of exists of that define.

       #ifdef __GNUC__
      +#ifndef _MFVideoNormalizedRect_
       typedef struct MFVideoNormalizedRect {
           float left;
           float top;
           float right;
           float bottom;
       } MFVideoNormalizedRect;
      +#endif
       #endif
      

      Attachments

        Issue Links

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

          Activity

            People

              valentyn.doroshchuk Valentyn Doroshchuk
              r4sas Kirill A
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes