/opt/blackdown-jdk-1.4.1/bin/jar cf qtjava.jar org/kde/qt/*.class /bin/sh ../../libtool --silent --mode=link --tag=CXX g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -O2 -march=pentium4 -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -o javalib -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib main.o ./qtjava/libqtjava.la -lqt-mt -lXext -lX11 /usr/lib/gcc/i686-pc-linux-gnu/3.4.3/../../../../i686-pc-linux-gnu/bin/ld: warning: libstdc++.so.5, needed by /usr/qt/3/lib/libqt-mt.so, may conflict with libstdc++.so.6 ./qtjava/.libs/libqtjava.so: undefined reference to `operator!=(QGLFormat const&, QGLFormat const&)' ./qtjava/.libs/libqtjava.so: undefined reference to `operator==(QGLFormat const&, QGLFormat const&)' collect2: ld returned 1 exit status make[4]: *** [javalib] Error 1 make[4]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1/qtjava/javalib' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1/qtjava/javalib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1/qtjava' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1' make: *** [all] Error 2 !!! ERROR: kde-base/qtjava-3.3.1 failed. !!! Function kde_src_compile, Line 142, Exitcode 2 !!! died running emake, kde_src_compile:make Reproducible: Always Steps to Reproduce: 1. emerge qtjava 2. 3. Actual Results: Build failed... It looked like there was a problem with Qt. Note: /qtjava/.libs/libqtjava.so: undefined reference to `operator!=(QGLFormat const&, QGLFormat const&)' ./qtjava/.libs/libqtjava.so: undefined reference to `operator==(QGLFormat const&, QGLFormat const&)' Since I had qt-3.3.3 installed, and there was an update to r1, I tried to emerge that. Unfortunately, the emerge of qt failed too. (I put in a separate bug report for that) Expected Results: Build would work. Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20040808-r1, 2.6.9-gentoo-r4 i686) ================================================================= System uname: 2.6.9-gentoo-r4 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.4.16 distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.90.0.1.1-r3 Headers: sys-kernel/linux26-headers-2.6.8.1-r1 Libtools: sys-devel/libtool-1.5.2-r7 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache digest distlocks keepwork sandbox sfperms" GENTOO_MIRRORS="http://gentoo.binarycompass.org ftp://mirror.nutsmaas.nl/gentoo/ http://gentoo.math.bme.hu http://gentoo.mirror.sdv.fr ftp://gentoo.osuosl.org/.1/gentoo http://gentoo.osuosl.org" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apm arts avi berkdb bitmap-fonts bonobo cdr crypt cscope cups encode esd f77 fam flac foomaticdb fortran gdbm gif gnome gphoto2 gpm gstreamer gtk gtk2 gtkhtml guile imagemagick imlib jack java jpeg junit kde libg++ libwww mad mikmod motif mozilla mpeg mysql nas ncurses nls nptl oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba scanner sdl slang speex spell ssl svga tcltk tcpd tetex tiff truetype x86 xml xml2 xmms xv zlib"
I can't reproduce it. But this warning: warning: libstdc++.so.5, needed by /usr/qt/3/lib/libqt-mt.so, may conflict with libstdc++.so.6 tells that you are mixing libstdc++.so.5 (gcc 3.3) with libstdc++.so.6 (gcc 3.4) this will bring some problems (compilation problems but also strange crashes). You can try rebuilding qt to look if this fixes the things. A better future solution is to rebuild every C++ program compiled with the old gcc. I've written something (in italian but the commands are clear) here: http://forums.gentoo.org/viewtopic.php?t=242168
I treid rebuilding qt. Actually, the version is now r1. That failed too... I put in a seaparate bug report for that. I just switched back to the old compiler (3.3) and I'm trying it again. If it works, I'll close the bug. If not then I'll post the results.
OK, I tried it again. It still fails but the compliant about libstdc++.so.6 is gone. It still looks like a Qt thing taht happens at the link phase for libqtjava. Note that there are undefined operators operator!=(QGLFormat const&, QGLFormat const&), and operator==(QGLFormat const&, QGLFormat const&) See below: /bin/sh ../../libtool --silent --mode=link --tag=CXX i686-pc-linux-gnu-g++ -Wnon-virtual-dtor -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -Wwrite-strings -DNDEBUG -DNO_DEBUG -O2 -O2 -march=pentium4 -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -fno-exceptions -fno-check-new -fno-common -o javalib -L/usr/X11R6/lib -L/usr/qt/3/lib -L/usr/kde/3.3/lib main.o ./qtjava/libqtjava.la -lqt-mt -lXext -lX11 ./qtjava/.libs/libqtjava.so: undefined reference to `operator!=(QGLFormat const&, QGLFormat const&)' ./qtjava/.libs/libqtjava.so: undefined reference to `operator==(QGLFormat const&, QGLFormat const&)' collect2: ld returned 1 exit status make[4]: *** [javalib] Error 1 make[4]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1/qtjava/javalib' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1/qtjava/javalib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1/qtjava' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/qtjava-3.3.1/work/qtjava-3.3.1' make: *** [all] Error 2
Just curious. Do you have the QT compiled with the "opengl" USE flag disabled? please post the "emerge -pv qt" output. If this is the case probably this is a bug of the ebuild or of the qtjava bindings.
don't mind. just noticed from your emerge info that "opengl" is enabled.
I poked around a bit and found /usr/qt/3/include/qgl.h has the following declarations: friend QM_EXPORT_OPENGL bool operator==( const QGLFormat&, const QGLFormat& ); friend QM_EXPORT_OPENGL bool operator!=( const QGLFormat&, const QGLFormat& ); So it would seem that they aren't defined anywhere or there might be some problem in libqt-mt.so.3. I tried doing an nm on it but the symbols are stripped :-(
Created attachment 44913 [details] emerge log file
The latest posted in the log is different. probabably you have rebuilt qt with different use flags from the last time and so you have to recompile also kdelibs.
Unable to reproduce, please reopen if it persists and you aren't able to get it working after re-emerging the dependency chain as noted above.