powerpc64: devel/qt5-core build fails with: "Q_ATOMIC_INT64_IS_SUPPORTED must be defined on a 64-bit platform", more

Mark Millard marklmi at yahoo.com
Wed Mar 6 09:54:56 UTC 2019


The below is from a ports-mgmt/poudriere-devel run under FreeBSD head
-r344825 on an old PowerMac G5 (2 sockets, 2 cores each, powerpc64).
The /usr/ports is from head -r494751 . buildworld buildkernel
was via devel/powerpc64-xtoolchain-gcc materials and system-clang
(8.0.0) was built (and installed as cc) as part of that.
/usr/ports/base/binutils was used to supply the system binutils,
including ld. (Running the PowerPC G5 for this context does require
some hacks in /usr/src/ currently.)


--- .obj/qatomic.o ---
g++8 -c -O2 -pipe -g -Wl,-rpath=/usr/local/lib/gcc8 -Wl,-rpath=/usr/local/lib/gcc8 -Og -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -pthread -fPIC -DQT_GLIB -DQT_NO_USING_NAMESPACE -DQT_NO_FOREACH -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_BUILD_CORE_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I. -I../3rdparty/zlib/src -Iglobal -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I../3rdparty/sha3 -I../3rdparty -I../3rdparty/double-conversion/include -I../3rdparty/double-conversion/include/double-conversion -I../3rdparty/forkfd -I../3rdparty/tinycbor/src -I../../include -I../../include/QtCore -I../../include/QtCore/5.12.1 -I../../include/QtCore/5.12.1/QtCore -I.moc -I.tracegen -isystem /usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -isystem /usr/local/include -I/usr/local/lib/qt5/mkspecs/freebsd-g++ -o .obj/qatomic.o thread/qatomic.cpp
thread/qatomic.cpp:1624:4: error: #error "Q_ATOMIC_INT64_IS_SUPPORTED must be defined on a 64-bit platform"
 #  error "Q_ATOMIC_INT64_IS_SUPPORTED must be defined on a 64-bit platform"
    ^~~~~
In file included from ../../include/QtCore/qglobal.h:1,
                 from thread/qatomic.h:41,
                 from thread/qatomic.cpp:41:
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h: In instantiation of 'class QBasicAtomicInteger<long int>':
../../include/QtCore/../../src/corelib/thread/qatomic.h:55:7:   required from 'class QAtomicInteger<long int>'
thread/qatomic.cpp:1631:1:   required from here
../../include/QtCore/../../src/corelib/global/qglobal.h:121:63: error: static assertion failed: template parameter is an integral of a size not supported on this platform
 #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
                                                               ^~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:97:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
     Q_STATIC_ASSERT_X(QAtomicOpsSupport<sizeof(T)>::IsSupported, "template parameter is an integral of a size not supported on this platform");
     ^~~~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h: In instantiation of 'class QBasicAtomicInteger<long unsigned int>':
../../include/QtCore/../../src/corelib/thread/qatomic.h:55:7:   required from 'class QAtomicInteger<long unsigned int>'
thread/qatomic.cpp:1632:1:   required from here
../../include/QtCore/../../src/corelib/global/qglobal.h:121:63: error: static assertion failed: template parameter is an integral of a size not supported on this platform
 #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
                                                               ^~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:97:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
     Q_STATIC_ASSERT_X(QAtomicOpsSupport<sizeof(T)>::IsSupported, "template parameter is an integral of a size not supported on this platform");
     ^~~~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h: In instantiation of 'class QBasicAtomicInteger<long long unsigned int>':
../../include/QtCore/../../src/corelib/thread/qatomic.h:55:7:   required from 'class QAtomicInteger<long long unsigned int>'
thread/qatomic.cpp:1633:1:   required from here
../../include/QtCore/../../src/corelib/global/qglobal.h:121:63: error: static assertion failed: template parameter is an integral of a size not supported on this platform
 #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
                                                               ^~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:97:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
     Q_STATIC_ASSERT_X(QAtomicOpsSupport<sizeof(T)>::IsSupported, "template parameter is an integral of a size not supported on this platform");
     ^~~~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h: In instantiation of 'class QBasicAtomicInteger<long long int>':
../../include/QtCore/../../src/corelib/thread/qatomic.h:55:7:   required from 'class QAtomicInteger<long long int>'
thread/qatomic.cpp:1634:1:   required from here
../../include/QtCore/../../src/corelib/global/qglobal.h:121:63: error: static assertion failed: template parameter is an integral of a size not supported on this platform
 #  define Q_STATIC_ASSERT_X(Condition, Message) static_assert(bool(Condition), Message)
                                                               ^~~~~~~~~~~~~~~
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:97:5: note: in expansion of macro 'Q_STATIC_ASSERT_X'
     Q_STATIC_ASSERT_X(QAtomicOpsSupport<sizeof(T)>::IsSupported, "template parameter is an integral of a size not supported on this platform");
     ^~~~~~~~~~~~~~~~~
*** [.obj/qatomic.o] Error code 1


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the freebsd-ports mailing list