Skip to content

error: redefinition of 'const GUID& __mingw_uuidof() [with T = ID3D11VideoContext; #1417

@mhao1999

Description

@mhao1999

QtAV, Qt version and platform

Not sure QtAV version, git clone master branch on 10/29/2022
commit fdc613d
Qt version: 5.15.5
Windows 10, msys2/ming32

or commit id if not using release version

Reproduction steps

msys2 and mingw32 path are: C:\msys64\mingw32
qtav source code path is: C:\msys64\home\QtAV
I open a msys2 terminal windows with administrator role
and navigate to the folder: C:\msys64\home\QtAV\msys2
issue a command: makepkg-mingw -sCLf

I downloaded dependencies from https://sourceforge.net/projects/qtav/files/depends/QtAV-depends-windows-x86+x64.7z/download
and unzip and place files in /include and /lib to c:\msys64\mingw32\include and c:\msys64\mingw32\lib seperately and do:
export CPATH=c:/msys64/mingw32/include:$CPATH
export LIBRARY_PATH=c:/msys64/mingw32/lib:$LIBRARY_PATH
export LD_LIBRARY_PATH=c:/msys64/mingw32/lib:$LD_LIBRARY_PATH

Expected behavior

QtAV modules will be generated and I can use it in a qml project

Actual behavior

make failed, the details are as below (part):
C:/msys64/mingw32/include/libavutil/frame.h:279:13: note: declared here
279 | int64_t pkt_pts;
| ^~~~~~~
make[2]: *** [src/CMakeFiles/QtAV.dir/build.make:1379: src/CMakeFiles/QtAV.dir/codec/video/VideoDecoderD3D11.cpp.obj] Error 1
In file included from C:/msys64/mingw32/include/corecrt.h:10,
from C:/msys64/mingw32/include/crtdefs.h:10,
from C:/msys64/mingw32/include/stddef.h:7,
from C:/msys64/mingw32/lib/gcc/i686-w64-mingw32/12.2.0/include/stddef.h:1,
from C:/msys64/mingw32/include/c++/12.2.0/cstddef:50,
from C:/msys64/mingw32/include/QtCore/qglobal.h:46,
from C:/msys64/mingw32/include/QtCore/qnamespace.h:43,
from C:/msys64/mingw32/include/QtCore/qmargins.h:43,
from C:/msys64/mingw32/include/QtCore/qrect.h:43,
from C:/msys64/mingw32/include/QtCore/QRect:1,
from C:/msys64/home/QtAV/msys2/src/qtav/src/directx/D3D11VP.h:24,
from C:/msys64/home/QtAV/msys2/src/qtav/src/directx/D3D11VP.cpp:22:
C:/msys64/home/QtAV/msys2/src/qtav/src/directx/D3D11VP.cpp:29:1: error: redefinition of 'const GUID& __mingw_uuidof() [with T = ID3D11VideoContext; GUID = GUID]'
29 | __CRT_UUID_DECL(ID3D11VideoContext,0x61F21C45,0x3C0E,0x4a74,0x9C,0xEA,0x67,0x10,0x0D,0x9A,0xD5,0xE4)
| ^~~~~~~~~~~~~~~
C:/msys64/mingw32/include/d3d11.h:9577:1: note: 'const GUID& __mingw_uuidof() [with T = ID3D11VideoContext; GUID = GUID]' previously declared here
9577 | __CRT_UUID_DECL(ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 0x67,0x10,0x0d,0x9a,0xd5,0xe4)
| ^~~~~~~~~~~~~~~
C:/msys64/home/QtAV/msys2/src/qtav/src/directx/D3D11VP.cpp:29:1: error: redefinition of 'const GUID& __mingw_uuidof() [with T = ID3D11VideoContext*; GUID = GUID]'
29 | __CRT_UUID_DECL(ID3D11VideoContext,0x61F21C45,0x3C0E,0x4a74,0x9C,0xEA,0x67,0x10,0x0D,0x9A,0xD5,0xE4)
| ^~~~~~~~~~~~~~~
C:/msys64/mingw32/include/d3d11.h:9577:1: note: 'const GUID& __mingw_uuidof() [with T = ID3D11VideoContext*; GUID = GUID]' previously declared here
9577 | __CRT_UUID_DECL(ID3D11VideoContext, 0x61f21c45, 0x3c0e, 0x4a74, 0x9c,0xea, 0x67,0x10,0x0d,0x9a,0xd5,0xe4)
| ^~~~~~~~~~~~~~~
C:/msys64/home/QtAV/msys2/src/qtav/src/directx/D3D11VP.cpp:30:1: error: redefinition of 'const GUID& __mingw_uuidof() [with T = ID3D11VideoDevice; GUID = GUID]'
30 | __CRT_UUID_DECL(ID3D11VideoDevice,0x10EC4D5B,0x975A,0x4689,0xB9,0xE4,0xD0,0xAA,0xC3,0x0F,0xE3,0x33)
| ^~~~~~~~~~~~~~~
C:/msys64/mingw32/include/d3d11.h:9009:1: note: 'const GUID& __mingw_uuidof() [with T = ID3D11VideoDevice; GUID = GUID]' previously declared here
9009 | __CRT_UUID_DECL(ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 0xd0,0xaa,0xc3,0x0f,0xe3,0x33)
| ^~~~~~~~~~~~~~~
C:/msys64/home/QtAV/msys2/src/qtav/src/directx/D3D11VP.cpp:30:1: error: redefinition of 'const GUID& __mingw_uuidof() [with T = ID3D11VideoDevice*; GUID = GUID]'
30 | __CRT_UUID_DECL(ID3D11VideoDevice,0x10EC4D5B,0x975A,0x4689,0xB9,0xE4,0xD0,0xAA,0xC3,0x0F,0xE3,0x33)
| ^~~~~~~~~~~~~~~
C:/msys64/mingw32/include/d3d11.h:9009:1: note: 'const GUID& __mingw_uuidof() [with T = ID3D11VideoDevice*; GUID = GUID]' previously declared here
9009 | __CRT_UUID_DECL(ID3D11VideoDevice, 0x10ec4d5b, 0x975a, 0x4689, 0xb9,0xe4, 0xd0,0xaa,0xc3,0x0f,0xe3,0x33)
| ^~~~~~~~~~~~~~~
make[2]: *** [src/CMakeFiles/QtAV.dir/build.make:1407: src/CMakeFiles/QtAV.dir/directx/D3D11VP.cpp.obj] Error 1
C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp: In member function 'virtual QtAV::VideoFrame QtAV::VideoDecoderDXVA::frame()':
C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp:192:33: warning: 'AVFrame::pkt_pts' is deprecated [-Wdeprecated-declarations]
192 | f.setTimestamp(d.frame->pkt_pts/1000.0);
| ^~~~~~~
In file included from C:/msys64/mingw32/include/libavcodec/avcodec.h:38,
from C:/msys64/mingw32/include/libavformat/avformat.h:319,
from C:/msys64/home/QtAV/msys2/src/qtav/src/QtAV/private/AVCompat.h:47,
from C:/msys64/home/QtAV/msys2/src/qtav/src/QtAV/private/AVDecoder_p.h:29,
from C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderFFmpegBase.h:26,
from C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderFFmpegHW.h:25,
from C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderD3D.h:27,
from C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp:26:
C:/msys64/mingw32/include/libavutil/frame.h:279:13: note: declared here
279 | int64_t pkt_pts;
| ^~~~~~~
C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp:192:33: warning: 'AVFrame::pkt_pts' is deprecated [-Wdeprecated-declarations]
192 | f.setTimestamp(d.frame->pkt_pts/1000.0);
| ^~~~~~~
C:/msys64/mingw32/include/libavutil/frame.h:279:13: note: declared here
279 | int64_t pkt_pts;
| ^~~~~~~
C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp:192:33: warning: 'AVFrame::pkt_pts' is deprecated [-Wdeprecated-declarations]
192 | f.setTimestamp(d.frame->pkt_pts/1000.0);
| ^~~~~~~
C:/msys64/mingw32/include/libavutil/frame.h:279:13: note: declared here
279 | int64_t pkt_pts;
| ^~~~~~~
C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp: In member function 'virtual bool QtAV::VideoDecoderDXVAPrivate::createDevice()':
C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderDXVA.cpp:272:36: warning: 'QString& QString::sprintf(const char*, ...)' is deprecated: Use asprintf(), arg() or QTextStream instead [-Wdeprecated-declarations]
272 | description = QString().sprintf("DXVA2 (%.*s, vendor %lu(%s), device %lu, revision %lu)",
| ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
273 | sizeof(d3dai.Description), d3dai.Description,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
274 | d3dai.VendorId, qPrintable(vendor), d3dai.DeviceId, d3dai.Revision);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from C:/msys64/mingw32/include/QtCore/qhashfunctions.h:44,
from C:/msys64/mingw32/include/QtCore/qvarlengtharray.h:47,
from C:/msys64/mingw32/include/QtCore/qmetatype.h:48,
from C:/msys64/mingw32/include/QtCore/QMetaType:1,
from C:/msys64/home/QtAV/msys2/src/qtav/src/QtAV/QtAV_Global.h:27,
from C:/msys64/home/QtAV/msys2/src/qtav/src/QtAV/AVError.h:24,
from C:/msys64/home/QtAV/msys2/src/qtav/src/QtAV/AVDecoder.h:25,
from C:/msys64/home/QtAV/msys2/src/qtav/src/QtAV/VideoDecoder.h:25,
from C:/msys64/home/QtAV/msys2/src/qtav/src/codec/video/VideoDecoderFFmpegBase.h:25:
C:/msys64/mingw32/include/QtCore/qstring.h:393:14: note: declared here
393 | QString &sprintf(const char *format, ...) Q_ATTRIBUTE_FORMAT_PRINTF(2, 3);
| ^~~~~~~
make[1]: *** [CMakeFiles/Makefile2:162: src/CMakeFiles/QtAV.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().
Aborting...

Log file

set environment var QTAV_LOG=all or C++ api QtAV::setLogLevel(All) to enable log.

For Player and QMLPlayer example app, choose log level all in config page.

Sample files (optional)

NOTE: QtAV is no longer maintained, please use new sdk

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions