Details
-
Bug
-
Resolution: Done
-
P3: Somewhat important
-
5.2.0 Beta1
-
None
-
Windows 7 (64-bit), Visual Studio 2008
-
4edc0cc3b9d7e56e59eab64d0576e8fd511c27c4
Description
Building from git with msvc2008 fails with:
directshowsamplescheduler.cpp
directshowvideorenderercontrol.cpp
mediasamplevideobuffer.cpp
E:\opensource\qt5-src-5.2.0\qtmultimedia\src\plugins\directshow\player\directshowmetadatacontrol.cpp(392) : error C2678: binary '==' : no operator found which takes a left-hand operand of type 'PROPERTYKEY' (or there is no acceptable conversion)
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qbytearray.h(537): could be 'bool operator ==(const QByteArray &,const QByteArray &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qbytearray.h(539): or 'bool operator ==(const QByteArray &,const char *)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qbytearray.h(541): or 'bool operator ==(const char *,const QByteArray &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qchar.h(513): or 'bool operator ==(QChar,QChar)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(576): or 'bool operator ==(const QString &,const QString &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(635): or 'bool operator ==(const char *,const QString &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(642): or 'bool operator ==(const char *,const QStringRef &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(988): or 'bool operator ==(QString::Null,QString::Null)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(989): or 'bool operator ==(QString::Null,const QString &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(990): or 'bool operator ==(const QString &,QString::Null)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(995): or 'bool operator ==(QLatin1String,QLatin1String)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(1052): or 'bool operator ==(const char *,QLatin1String)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(1330): or 'bool operator ==(const QStringRef &,const QStringRef &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(1333): or 'bool operator ==(const QString &,const QStringRef &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(1336): or 'bool operator ==(const QStringRef &,const QString &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(1340): or 'bool operator ==(QLatin1String,const QStringRef &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qstring.h(1343): or 'bool operator ==(const QStringRef &,QLatin1String)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qsize.h(83): or 'bool operator ==(const QSize &,const QSize &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qsize.h(243): or 'bool operator ==(const QSizeF &,const QSizeF &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qhash.h(198): or 'bool operator ==(const QHashDummyValue &,const QHashDummyValue &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qpoint.h(80): or 'bool operator ==(const QPoint &,const QPoint &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qpoint.h(240): or 'bool operator ==(const QPointF &,const QPointF &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qrect.h(151): or 'bool operator ==(const QRect &,const QRect &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/tools/qrect.h(551): or 'bool operator ==(const QRectF &,const QRectF &)'
C:\Program Files\Microsoft SDKs\Windows\v6.0A\include\guiddef.h(192): or 'int operator ==(const GUID &,const GUID &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/kernel/qvariant.h(446): or 'bool operator ==(const QVariant &,const QVariantComparisonHelper &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtbase\include\qtcore\../../../../../qt5-src-5.2.0/qtbase/src/corelib/kernel/qmetaobject.h(173): or 'bool operator ==(const QMetaMethod &,const QMetaMethod &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtmultimedia\include\qtmultimedia\../../../../../qt5-src-5.2.0/qtmultimedia/src/multimedia/qmediatimerange.h(78): or 'bool operator ==(const QMediaTimeInterval &,const QMediaTimeInterval &)'
e:\opensource\qt5-src-5.2.0-build-vs2008\qt-x64-shared-d\qtmultimedia\include\qtmultimedia\../../../../../qt5-src-5.2.0/qtmultimedia/src/multimedia/qmediatimerange.h(122): or 'bool operator ==(const QMediaTimeRange &,const QMediaTimeRange &)'
while trying to match the argument list '(PROPERTYKEY, const PROPERTYKEY)'
This happens when compiling a 32-bit as well as a 64-bit Qt5. The same sources compile fine with other versions of Visual Studio and the same configuration options.
I can provide full config and and build logs if necessary.
Attachments
For Gerrit Dashboard: QTBUG-34479 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
69803,1 | DirectShow: fix compilation with MSVC 2008. | stable | qt/qtmultimedia | Status: MERGED | +2 | 0 |