I'm sure this is fairly obvious, but I'm updating from KDE 4.3.4 to 4.4.0 and pykde4 is failing to compile: [ 77%] Building CXX object python/pykde4/CMakeFiles/python_module_PyKDE4_phonon.dir/sip/phonon/sipphononpart7.o In file included from /usr/include/python2.6/Python.h:8, from /usr/include/python2.6/sip.h:33, from /var/tmp/portage/kde-base/pykde4-4.4.0/work/pykde4-4.4.0-2.6_build/python/pykde4/sip/phonon/sipAPIphonon.h:11, from /var/tmp/portage/kde-base/pykde4-4.4.0/work/pykde4-4.4.0-2.6_build/python/pykde4/sip/phonon/sipphononpart7.cpp:7: /usr/include/python2.6/pyconfig.h:1073:1: warning: "_XOPEN_SOURCE" redefined <command-line>: warning: this is the location of the previous definition Linking CXX shared library ../../lib/pykde/phonon.so [ 77%] Built target python_module_PyKDE4_phonon [ 77%] Generating sip/plasma/sipplasmapart0.cpp, sip/plasma/sipplasmapart1.cpp, sip/plasma/sipplasmapart2.cpp, sip/plasma/sipplasmapart3.cpp, sip/plasma/sipplasmapart4.cpp, sip/plasma/sipplasmapart5.cpp, sip/plasma/sipplasmapart6.cpp, sip/plasma/sipplasmapart7.cpp sip: QAbstractAnimation has not been defined make[2]: *** [python/pykde4/sip/plasma/sipplasmapart0.cpp] Error 1 make[1]: *** [python/pykde4/CMakeFiles/python_module_PyKDE4_plasma.dir/all] Error 2 make: *** [all] Error 2 * ERROR: kde-base/pykde4-4.4.0 failed: * Make failed! * * Call stack: * ebuild.sh, line 54: Called src_compile * environment, line 5694: Called python_execute_function '-s' 'do_src_compile' * environment, line 4595: Called do_src_compile * environment, line 5692: Called kde4-meta_src_compile * environment, line 3564: Called kde4-base_src_compile * environment, line 3244: Called cmake-utils_src_compile * environment, line 1377: Called _execute_optionaly 'src_compile' * environment, line 681: Called enable_cmake-utils_src_compile * environment, line 1759: Called cmake-utils_src_make * environment, line 1396: Called die * The specific snippet of code: * emake "$@" || die "Make failed!"; That's a very noisy build... I had to drop down to -j1 to find the error. # emerge --info =kde-base/pykde4-4.4.0 Portage 2.1.7.16 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.10.1-r1, 2.6.32-gentoo-r1 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-2.6.32-gentoo-r1-x86_64-Intel-R-_Core-TM-_i7_CPU_920_@_2.67GHz-with-gentoo-1.12.13 Timestamp of tree: Wed, 10 Feb 2010 00:15:01 +0000 app-shells/bash: 4.0_p35 dev-java/java-config: 2.1.10 dev-lang/python: 2.6.4 dev-util/cmake: 2.8.0-r2 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.13, 2.63-r1 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc: 4.3.4 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA dlj-1.1 DOOM3 ETQW QUAKE4 ut2003-demo Q3AEULA RTCW-ETEULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O3 -pipe -fomit-frame-pointer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-march=native -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://gentoo.mirrors.tera-byte.com/ http://gentoo.arcticnetwork.ca/source/ http://cdot.senecac.on.ca/software/gentoo/ http://prometheus.cs.wmich.edu/gentoo/ http://mirrors.acm.cs.rpi.edu/gentoo/ http://mirror.csclub.uwaterloo.ca/gentoo-distfiles/" LDFLAGS="-Wl,-O1" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/nvidia /usr/local/portage/crossdev" SYNC="rsync://rsync.ca.gentoo.org/gentoo-portage" USE="3dnow 3dnowext X a52 aac aalib acl acpi aim alsa amd64 asf audiofile berkdb branding bzip2 cairo cdinstall cdparanoia cdr cli consolekit cracklib crypt cups curl cvs cxx daap dbus dri dts dvd dvdr dvdread emboss emul-linux-x86 encode ethereal evo exif fam fbcon ffmpeg firefox flac fortran gdbm gif glut gpm hal iconv icq ieee1394 imagemagick imlib ipv6 javascript jpeg jpeg2k kde lame lm_sensors logitech-mouse lzma mad mikmod mmx mmxext mng modules mp3 mp4 mpeg mpg msn mudflap multilib ncurses nls nocd nptl nptlonly nvidia offensive ogg oggvorbis openal opengl openmp oscar pam pcntl pcre pdf perl php png portaudio posix ppds pppd python qt qt3support qt4 quicktime readline reflection sdl semantic-desktop session shorten smp sndfile spell spl sql sse sse2 sse3 ssl ssse3 startup-notification subversion svg sysfs szip tcpd tetex theora thunar tiff truetype unicode usb vcd vdpau videos vorbis x264 xcomposite xine xinerama xml xorg xulrunner xv xvid xvmc zeroconf zlib" ALSA_CARDS="emu10k1" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="access auth auth_dbm auth_anon auth_digest authz_host alias file_cache echo charset_lite cache disk_cache mem_cache ext_filter filter case_filter_in deflate mime_magic cern_meta expires headers usertrack unique_id proxy proxy_connect proxy_ftp proxy_http info include cgi cgid dav dav_fs vhost_alias speling rewrite log_config logio env setenvif mime status autoindex asis negotiation dir imap actions userdir so" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS # emerge -pqv =kde-base/pykde4-4.4.0 [ebuild NS ] kde-base/pykde4-4.4.0 [4.3.4] USE="semantic-desktop -akonadi (-aqua) -debug -doc -examples (-kdeenablefinal) (-kdeprefix)" [uninstall ] kde-base/pykde4-4.3.4 USE="-akonadi (-aqua) -debug -examples (-kdeenablefinal) (-kdeprefix) -policykit -semantic-desktop" [blocks b ] kde-base/pykde4:4.3[-kdeprefix] ("kde-base/pykde4:4.3[-kdeprefix]" is blocking kde-base/pykde4-4.4.0) [blocks b ] kde-base/pykde4:4.4[-kdeprefix] ("kde-base/pykde4:4.4[-kdeprefix]" is blocking kde-base/pykde4-4.3.4) Reproducible: Always Steps to Reproduce: 1. emerge -uDNv world Actual Results: System update aborts on pykde4 build failure. Expected Results: System update should complete without error.
Okay, had the same problem. Actually a rebuild of PyQt4 solved it. A plain emerge --oneshot --ask --verbose PyQt4 and afterwards you can continue the worldupdate you were running.
dev-python/sip (portage) prints this when updating, ewarn 'When updating sip, you usually need to recompile packages that' ewarn 'depend on sip, such as PyQt4 and qscintilla-python. If you have' ewarn 'app-portage/gentoolkit installed you can find these packages with' ewarn '`equery d sip` and `equery d PyQt4`.' so... it's a issue of not following the instructions, more or less a dupe of bug 291799 *** This bug has been marked as a duplicate of bug 291799 ***
Comment #1 was actually the solution here, at least for me. I hadn't touched sip or PyQt4 since mid January, but I had just updated qt to 4.6.1 (from 4.5.x), and the error message was regarding a function that was added in qt 4.6. So I'm fairly sure what happened is because PyQt4 was built against qt 4.5, it didn't have the new function and thus pykde4 couldn't link against it. Anyways, as I said, remerging PyQt4 fixed the problem.