Stops with a bunch of invalid type casts. My guess is that this happens because of the mismatch of the pointer size between 32-bit and 64-bit architectures. See additional info for the error message. Reproducible: Always Steps to Reproduce: 1. ACCEPT_KEYWORDS="~amd64" emerge qt-embedded 2. 3. -emb-auto/ -o .obj/release-shared-mt-emb-auto/qclipboard_qws.o kernel/qclipboard_qws.cpp kernel/qfontmanager_qws.h:177: warning: âclass QCachePolicyâ has virtual functions but non-virtual destructor kernel/qfontmanager_qws.h:188: warning: âclass QDefaultCachePolicyâ has virtual functions but non-virtual destructor kernel/qwindowsystem_qws.h:223: warning: âclass QWSServer::KeyboardFilterâ has virtual functions but non-virtual destructor kernel/qapplication_qws.cpp: In static member function âstatic void QApplication::setOverrideCursor(const QCursor&, bool)â: kernel/qapplication_qws.cpp:1884: error: cast from âvoid*â to âintâ loses precision kernel/qapplication_qws.cpp: In static member function âstatic void QApplication::restoreOverrideCursor()â: kernel/qapplication_qws.cpp:1903: error: cast from âvoid*â to âintâ loses precision kernel/qapplication_qws.cpp:1907: error: cast from âvoid*â to âintâ loses precision kernel/qapplication_qws.cpp: In member function âint QApplication::qwsProcessEvent(QWSEvent*)â: kernel/qapplication_qws.cpp:2135: error: cast from âvoid*â to âintâ loses precision make[1]: *** [.obj/release-shared-mt-emb-auto/qapplication_qws.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/src' make: *** [sub-src] Error 2 !!! ERROR: x11-libs/qt-embedded-3.3.4-r1 failed. Call stack: ebuild.sh, line 1546: Called dyn_compile ebuild.sh, line 937: Called src_compile qt-embedded-3.3.4-r1.ebuild, line 85: Called die
Changing various (int) or (unsigned int) casts to (long) and (unsigned long) seems to make it build further but make still stops at another problem: make[3]: Entering directory `/var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/tools/assistant' /var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/bin/uic -L /var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/plugins finddialog.ui -o finddialog.h make[3]: /var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/bin/uic: Command not found make[3]: *** [finddialog.h] Error 127 make[3]: Leaving directory `/var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/tools/assistant' make[2]: *** [sub-assistant] Error 2 make[2]: Leaving directory `/var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4/tools' make[1]: *** [sub-tools] Error 2 make[1]: Leaving directory `/var/tmp/portage/x11-libs/qt-embedded-3.3.4-r1/work/qt-embedded-free-3.3.4' make: *** [init] Error 2
I too got it compiled by replacing ints with longs. I did not have missing uic error since I had regular qt-3 installed beforehand. uic is a tool that came with it on my machine (I wonder if qt-embedded should have dependency on qt then, or it must include uic otherwise?... but that probably would be a different issue). So, I got it compiled with these sort of fixes. Unfortunately I cannot tell if it actually works because I have nothing to test qt-embedded with.
I've bumped qt embedded to 3.3.7. Can you try it and see if it fixes these issues?
it's still failing, unfortunately
Created attachment 121068 [details, diff] 64bit gcc4 fix qt-embedded-3.3.8 compiles fine for me with attached patch and USE="cups debug doc gif ipv6 opengl sqlite (-firebird) -mysql -nis -odbc -postgres", I have not taken this upstream yet
it's still broken :D
(In reply to comment #5) > Created an attachment (id=121068) [edit] > 64bit gcc4 fix > > qt-embedded-3.3.8 compiles fine for me with attached patch and USE="cups debug > doc gif ipv6 opengl sqlite (-firebird) -mysql -nis -odbc -postgres", I have not > taken this upstream yet > Ok, well. it has been over a year without action. I reverted the ~amd64 keyword. You can add it back if this patch gets applied (or add us to CC for additional testing, etc). Thanks.
Patch added. ~amd64 keyword re-added. Thanks for your contributions!