g++ -c -o project.o -pipe -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include/qmake -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/builddir/build/BUILD/qt-x11-free-3.3.8b/mkspecs/linux-g++ -DHAVE_QCONFIG_CPP project.cpp In file included from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtextstream.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtl.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qvaluelist.h:45, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstringlist.h:45, from project.h:42, from project.cpp:39: /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h: In member function 'ushort& QChar::unicode()': /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h:202: error: cannot bind packed field '((QChar*)this)->QChar::ucs' to 'ushort&' qmake failed to build. Aborting.
Any hints, pointers?
Gory details: http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=37115
-- Rex
On 06/01/2009 09:19 PM, Rex Dieter wrote:
g++ -c -o project.o -pipe -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include/qmake -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/builddir/build/BUILD/qt-x11-free-3.3.8b/mkspecs/linux-g++ -DHAVE_QCONFIG_CPP project.cpp In file included from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtextstream.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtl.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qvaluelist.h:45, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstringlist.h:45, from project.h:42, from project.cpp:39: /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h: In member function 'ushort& QChar::unicode()': /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h:202: error: cannot bind packed field '((QChar*)this)->QChar::ucs' to 'ushort&' qmake failed to build. Aborting.
Any hints, pointers?
From a Google around, it seems the compiler won't let you make a non-const reference to this packed member.
-Andy
Andy Green wrote:
On 06/01/2009 09:19 PM, Rex Dieter wrote:
g++ -c -o project.o -pipe -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include/qmake -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/builddir/build/BUILD/qt-x11-free-3.3.8b/mkspecs/linux-g++ -DHAVE_QCONFIG_CPP project.cpp In file included from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtextstream.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtl.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qvaluelist.h:45, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstringlist.h:45, from project.h:42, from project.cpp:39: /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h: In member function 'ushort& QChar::unicode()': /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h:202: error: cannot bind packed field '((QChar*)this)->QChar::ucs' to 'ushort&' qmake failed to build. Aborting.
Any hints, pointers?
From a Google around, it seems the compiler won't let you make a non-const reference to this packed member.
OK, I think this code path doesn't hit on other archs, on arm Q_NO_PACKED_REFERENCE is defined, and the code is:
#ifdef Q_NO_PACKED_REFERENCE ushort &unicode() { return *((ushort *)&ucs); } #else ushort &unicode() { return ucs; } #endif
Now, I'll stare at this until my eyes bleed to see where to stuff a (const)
-- Rex
On Mon, 2009-06-01 at 15:19 -0500, Rex Dieter wrote:
g++ -c -o project.o -pipe -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include/qmake -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/builddir/build/BUILD/qt-x11-free-3.3.8b/mkspecs/linux-g++ -DHAVE_QCONFIG_CPP project.cpp In file included from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtextstream.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtl.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qvaluelist.h:45, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstringlist.h:45, from project.h:42, from project.cpp:39: /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h: In member function 'ushort& QChar::unicode()': /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h:202: error: cannot bind packed field '((QChar*)this)->QChar::ucs' to 'ushort&' qmake failed to build. Aborting.
Any hints, pointers?
Gory details: http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=37115
Isn't that one of the things fixed by the arm patch? I only see the end of the build log, so I can't see if that patch got applied or not.
http://ftp.linux.org.uk/pub/linux/arm/fedora/diffs-f10/qt3-3.3.8b-17.fc10/00...
Or maybe it needs something else for gcc 4.4 vs 4.3.
--Mark
Mark Salter wrote:
On Mon, 2009-06-01 at 15:19 -0500, Rex Dieter wrote:
g++ -c -o project.o -pipe -I. -Igenerators -Igenerators/unix -Igenerators/win32 -Igenerators/mac -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include/qmake -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -I/builddir/build/BUILD/qt-x11-free-3.3.8b/include -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT -DQT_NO_STL -DQT_NO_COMPRESS -I/builddir/build/BUILD/qt-x11-free-3.3.8b/mkspecs/linux-g++ -DHAVE_QCONFIG_CPP project.cpp In file included from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtextstream.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qtl.h:46, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qvaluelist.h:45, from /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstringlist.h:45, from project.h:42, from project.cpp:39: /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h: In member function 'ushort& QChar::unicode()': /builddir/build/BUILD/qt-x11-free-3.3.8b/include/qstring.h:202: error: cannot bind packed field '((QChar*)this)->QChar::ucs' to 'ushort&' qmake failed to build. Aborting.
Any hints, pointers?
Gory details: http://arm.koji.fedoraproject.org/koji/taskinfo?taskID=37115
Isn't that one of the things fixed by the arm patch? I only see the end of the build log, so I can't see if that patch got applied or not.
It is (a variant of it anyway):
http://cvs.fedoraproject.org/viewvc/rpms/qt3/F-11/qt-x11-free-3.3.7-arm.patc...
from build.log: ... + echo 'Patch #39 (qt-x11-free-3.3.7-arm.patch):' Patch #39 (qt-x11-free-3.3.7-arm.patch): + /bin/cat /builddir/build/SOURCES/qt-x11-free-3.3.7-arm.patch + /usr/bin/patch -s -p1 -b --suffix .arm --fuzz=2 ...
-- Rex