[Interest] Fwd: Qt 5.4 build error on OS X 10.7

René J.V. Bertin rjvbertin at gmail.com
Wed Feb 11 17:15:37 CET 2015


Hello,

Someone is testing my MacPorts recipe (portfile) for building Qt 5.4.0 for me on OS X 10.7. He reports that the build procedure fails with an error message that neither of us can make much of:



{{{
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -c -Os -ffunction-secti ons -fPIC -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk -std=c++11 -stdlib=libc++ -mmacosx-version-min=10.7 -fno-exceptions -Wall -W -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EV DEV -DQT_BOOTSTRAPPED -DQT_LITE_UNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CODECS -DQT_NO_DATASTREAM -DQT_NO_LIBRARY -DQT_N O_QOBJECT -DQT_NO_SYSTEMLOCALE -DQT_NO_THREAD -DQT_NO_UNICODETABLES -DQT_NO_USING_NAMESPACE -DQT_NO_DEPRECATED -DQT_NO _TRANSLATION -DQT_QMAKE_LOCATION=\"$D/build/qtbase/bin/qmake\" -DQT_CRYPTOGRAPHICHASH_ONLY_SHA1 -DQT_NO_CAST_FROM_ASCII -DQT_BUILD_BOOTSTRAP_LIB -DQT_BUILDING_QT -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/mkspecs/macx-clang -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/src/tools/bootstrap -I $D/qt-everywhere-opensource-src-5.4.0/qtbase/include -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtXml -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/5.4.0 -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/5.4.0/QtCore -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtXml/5.4.0 -I$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtXml/5.4.0/QtXml -I../../../include -I../../../include/QtCore -I$D/build/qtbase/include/QtXml -I. -o .obj/qlog ging.o $D/qt-everywhere-opensource-src-5.4.0/qtbase/src/corelib/global/qlogging.cpp

In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/src/corelib/global/qlogging.cpp:41:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/qdebug.h:1:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/io/qdebug.h:42:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/qtextstream.h:1:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/io/qtextstream.h:40:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/qlocale.h:1:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/tools/qlocale.h:37:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/qvariant.h:1:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/kernel/qvariant.h:40:
In file included from $D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/qmetatype.h:1:
$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/kernel/qmetatype.h:1943:1: error: copying variable
 of type 'QBasicAtomicInt' (aka 'QBasicAtomicInteger<int>') invokes deleted constructor
Q_DECLARE_METATYPE_TEMPLATE_2ARG(QPair)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/kernel/qmetatype.h:1808:32: note: expanded from ma
cro 'Q_DECLARE_METATYPE_TEMPLATE_2ARG'
        static QBasicAtomicInt metatype_id = Q_BASIC_ATOMIC_INITIALIZER(0); \
                               ^             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/kernel/qmetatype.h:1509:82: note: in instantiation
 of member function 'QMetaTypeId<QPair<QVariant, QVariant> >::qt_metatype_id' requested here
    static inline Q_DECL_CONSTEXPR int qt_metatype_id() { return QMetaTypeId<T>::qt_metatype_id(); }
                                                                                 ^
$D/qt-everywhere-opensource-src-5.4.0/qtbase/include/QtCore/../../src/corelib/thread/qbasicatomic.h:229:5: note: function has be
en explicitly marked deleted here
    QBasicAtomicInteger(const QBasicAtomicInteger &) = delete;
    ^
1 error generated.
}}}

Can anyone here make sense of the error and indicate how to avoid it? We do have a number of patches that we apply for MacPorts, but those don't (shouldn't) affect anything related to qbasicatomic, not to my knowledge at least.

I admit that I've never seen this kind of construct, assigning a keyword to a function (constructor). Could it be that my tester isn't using a sufficiently recent Xcode version on OS X 10.7, and the error stems simply from a compiler insufficiency?

Thanks,
René


More information about the Interest mailing list