kdeutils build fails with the same error for versions 3.5.2 and 3.5.3. I looked like a problem related to python, so I upgraded the python package to python-2.4.3-r1, but it didn't solve the problem. I also tried building with and without the unicode USE flag. Reproductibility is 100%. Output of emerge -pv kdeutils : These are the packages that I would merge, in order: Calculating dependencies ...done! [ebuild N ] kde-base/kdeutils-3.5.3 -arts +crypt -debug -kdeenablefinal -kdehiddenvisibility (-pbbuttonsd) +snmp +xinerama +xmms 0 kB Total size of downloads: 0 kB Emerge --info output : Portage 2.0.54-r2 (default-linux/x86/2005.1, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16.9 i686) ================================================================= System uname: 2.6.16.9 i686 AMD Athlon(tm) XP 2500+ Gentoo Base System version 1.6.14 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] app-admin/eselect-compiler: [Not Present] dev-lang/python: 2.4.3-r1 dev-python/pycrypto: [Not Present] dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/gcc-config: 1.3.13-r2 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O3 -march=athlon-xp -mmmx -msse -m3dnow -mfpmath=sse -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/lib/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -march=athlon-xp -mmmx -msse -m3dnow -mfpmath=sse -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://mirrors.tds.net/gentoo ftp://mirrors.tds.net/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 3dnow 3dnowext X a52 aac acpi akode alsa apache2 apm asf audiofile avi berkdb bitmap-fonts bzip2 cdparanoia cdr cli crypt css cups curl dga directfb divx4linux dlloader doc dri dts dv dvd dvdr dvdread eds emboss encode exif expat fam fame fbcon fdftk ffmpeg fftw flac foomaticdb fortran fuse gdbm gif gimpprint glut gphoto2 gpm graphviz gstreamer gtk gtk2 hal icq idn ieee1394 imagemagick imap imlib isdnlog joystick jpeg jpeg2k kde ladcca lcms ldap libwww lirc lm_sensors logitech-mouse lzo mad matroska memlimit mikmod mmx mng modplug mp3 mpeg msn musepack musicbrainz nas ncurses netcdf ntfs nvidia odbc ogg oggvorbis openal openexr opengl pam pcre pdf png ppds pppd python qt qt3 qt4 quicktime rdesktop readline real reflection reiser4 reiserfs rtc samba scanner sdl session slp sndfile snmp speex spell spl sqlite sse ssl subversion svg svga tcpd tga theora threads tiff truetype truetype-fonts type1-fonts udev unicode usb vcd video_cards_nvidia vidix vorbis win32codecs wmf xine xinerama xml2 xmms xorg xosd xv xvid xvmc yv12 zip zlib input_devices_keyboard input_devices_mouse input_devices_evdev userland_GNU kernel_linux elibc_glibc" Unset: CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTAGE_RSYNC_OPTS, PORTDIR_OVERLAY Relevant part of the build log : /bin/sh ../../libtool --silent --tag=CXX --mode=link i686-pc-linux-gnu-g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O3 -march=athlon-xp -mmmx -msse -m3dnow -mfpmath=sse -pipe -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -o superkaramba -Wl,-export-dynamic -R /usr/kde/3.5/lib -R /usr/kde/3.5/lib -R /usr/qt/3/lib -R /usr/lib -L/usr/kde/3.5/lib -L/usr/qt/3/lib -L/usr/lib -L/usr/lib -rdynamic main.o karamba.o meter.o bar.o sensor.o datesensor.o textlabel.o memsensor.o uptimesensor.o cpusensor.o networksensor.o imagelabel.o graph.o xmmssensor.o programsensor.o disksensor.o sensorparams.o sensorsensor.o textfilesensor.o clickarea.o noatunsensor.o karambarootpixmap.o clickmap.o rsssensor.o textfield.o taskmanager.o showdesktop.o richtextlabel.o karambasessionmanaged.o systemtray.o bar_python.o meter_python.o textlabel_python.o richtextlabel_python.o imagelabel_python.o config_python.o misc_python.o systray_python.o task_python.o widget_python.o menu_python.o karambalistboxitem.o graph_python.o karambainterface.o karambaapp.o karamba_python.o lineparser.o themefile.o themesdlg.o themewidget.o kwidgetlistbox.o sknewstuff.o themelocale.o input.o sklineedit.o input_python.o svcgrp_python.o dcopinterface_skel.o dcopinterface_stub.o themes_layout.o themewidget_layout.o superkarambasettings.o -lkio -lkdeui -L/usr/lib -lgtk -lgdk -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm -lxmms -lpython2.4 -ldl -lknewstuff -lm -lm -lm meter_python.o: In function `PyString2QString(_object*)': meter_python.cpp:(.text+0x1a4): undefined reference to `PyUnicodeUCS2_AsUnicode' meter_python.o: In function `QString2PyString(QString)': meter_python.cpp:(.text+0x228): undefined reference to `PyUnicodeUCS2_FromUnicode' meter_python.o: In function `py_getStringValue(_object*, _object*, QString)': meter_python.cpp:(.text+0xbfe): undefined reference to `PyUnicodeUCS2_FromUnicode' collect2: ld returned 1 exit status make[3]: *** [superkaramba] Error 1 make[3]: Leaving directory `/var/tmp/portage/kdeutils-3.5.3/work/kdeutils-3.5.3/superkaramba/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/kdeutils-3.5.3/work/kdeutils-3.5.3/superkaramba' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/kdeutils-3.5.3/work/kdeutils-3.5.3' make: *** [all] Error 2
USE=ucs2 emerge python; emerge kdelibs Does it work then?
I did what you suggested (USE=ucs2 emerge python; emerge kdelibs; emerge kdeutils) and it worked. However, I'm not sure rebuilding kdelibs was necessary. Basically, my understanding of the problem is that python wasn't compiled with the right use flag. I know dependencies in portage are given on packages and versions, but is there a way to add a dependency on a package compiled with a specific use flag?
We can add a message to superkaramba to fail if Python wasn't built with unicode support, but you may want to file a bug at bugs.kde.org so they can put in a proper check for it in the superkaramba code. My guess is that they just assume it's always built that way, even though it's possible to build without.
> Basically, my understanding of the problem is that python wasn't compiled with the right use flag. No. Python should be build with ucs4 (on a normal platform at least). *** This bug has been marked as a duplicate of 115590 ***