Summary: | kde-apps/pykde4-4.14.3-r1 - .../work/pykde4-4.14.3-python2_7/sip/dnssd/sipAPIdnssd.h:569:76: error: ‘sipWrapperType {aka struct _sipWrapperType}’ has no member named ‘type’ | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Mark Nowiasz <mark+gentoobugs> |
Component: | Current packages | Assignee: | Gentoo KDE team <kde> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bugs, dschridde+gentoobugs, gentoo, kredba, m.debruijne, Martin.vGagern, phobosk, steven, zeekec |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | build.log |
Description
Mark Nowiasz
2016-12-31 21:42:01 UTC
Created attachment 458184 [details]
build.log
build.log
emerge --info !!! Repository 'x-portage' is missing masters attribute in '/usr/local/portage/metadata/layout.conf' !!! Set 'masters = gentoo' in this file for future compatibility Portage 2.3.3 (python 3.4.5-final-0, default/linux/amd64/13.0/desktop/plasma/systemd, gcc-5.4.0, glibc-2.23-r3, 4.9.0-gentoo x86_64) ================================================================= System uname: Linux-4.9.0-gentoo-x86_64-Intel-R-_Core-TM-_i7-2600_CPU_@_3.40GHz-with-gentoo-2.3 KiB Mem: 8161424 total, 3733204 free KiB Swap: 33554428 total, 32615860 free Timestamp of repository gentoo: Sat, 31 Dec 2016 11:15:01 +0000 sh bash 4.4_p5-r1 ld GNU ld (Gentoo 2.27 p1.0) 2.27 app-shells/bash: 4.4_p5-r1::gentoo dev-java/java-config: 2.2.0-r3::gentoo dev-lang/perl: 5.24.1_rc4::gentoo dev-lang/python: 2.7.12::gentoo, 3.4.5::gentoo dev-util/cmake: 3.7.1::gentoo dev-util/pkgconfig: 0.29.1::gentoo sys-apps/baselayout: 2.3::gentoo sys-apps/openrc: 0.23::gentoo sys-apps/sandbox: 2.10-r2::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69-r2::gentoo sys-devel/automake: 1.10.3-r2::gentoo, 1.11.6-r2::gentoo, 1.13.4-r1::gentoo, 1.14.1-r1::gentoo, 1.15-r2::gentoo sys-devel/binutils: 2.27::gentoo sys-devel/gcc: 5.4.0-r2::gentoo sys-devel/gcc-config: 1.8-r1::gentoo sys-devel/libtool: 2.4.6-r2::gentoo sys-devel/make: 4.2.1::gentoo sys-kernel/linux-headers: 4.9::gentoo (virtual/os-headers) sys-libs/glibc: 2.23-r3::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.europe.gentoo.org/gentoo-portage priority: -1000 x-portage location: /usr/local/portage masters: gentoo priority: 0 digint location: /var/lib/layman/digint sync-type: git sync-uri: git://dev.tty0.ch/portage/digint-overlay.git masters: gentoo priority: 50 go-overlay location: /var/lib/layman/go-overlay sync-type: laymansync sync-uri: https://github.com/Dr-Terrible/go-overlay.git masters: gentoo priority: 50 java location: /var/lib/layman/java sync-type: laymansync sync-uri: git://anongit.gentoo.org/proj/java.git masters: gentoo priority: 50 nashedelo location: /var/lib/layman/nashedelo sync-type: laymansync sync-uri: https://bitbucket.org/angry_elf/nashedelo masters: gentoo priority: 50 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/easy-rsa /usr/share/gnupg/qualified.txt /usr/share/themes/oxygen-gtk/gtk-2.0 /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.1/ext-active/ /etc/php/cgi-php7.1/ext-active/ /etc/php/cli-php7.1/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.mneisen.org/ http://de-mirror.org/distro/gentoo/ http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ ftp://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://mirror.jamit.de/gentoo/ http://mirror.netcologne.de/gentoo/ ftp://mirror.netcologne.de/gentoo/ " LANG="en_US.UTF8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="X a52 aac aalib acl acpi aim alsa amd64 apng audiofile avx ayatana bash-completion bcmath berkdb blas bluetooth branding bzip2 cairo calendar cdb cdda cddb cdinstall cdparanoia cdr chromium cli clutter colord cracklib crypt cryptsetup css cups curl curlwrappers cvs cxx dbus declarative djvu dng dri dts dv dvb dvd dvdr emboss encode enscript evo exif expat fam farstream ffmpeg fftw flac flickr fontconfig foomaticdb fortran ftp gd gdbm gdu geo geoip gif gimp git glamor glut gmp gnuplot gnutls go google gphoto2 gpm graphicsmagick graphviz gsl gsm gstreamer gtk gtk3 gtkhtml gudev gzip handbook hbci hddtemp hdf5 iconv icq icu idn imagemagick imap imlib ipv6 jabber jack java java6 javascript jbig jingle jit joystick jpeg jpeg2k kde kdepim kipi lame lapack lash latex lcms ldap libcaca libedit libffi libnotify libsamplerate libwww lm_sensors lua lzma lzo mad maildir matroska memlimit mercurial mhash mikmod milter mime mmap mms mmx mmxext mng modplug modules mono mp3 mp4 mpeg mpi mplayer msn mtp multilib musepack musicbrainz mysql mysqli nas ncurses netcdf nls nntp nocd nptl nsplugin ocr odbc offensive ofx ogg openal opencl openexr opengl openmax openmp openvg osc oscar pam pango pcntl pcre pda pdf pentax phonon php plasma plotutils png policykit portaudio ppds pulseaudio python qml qt3support qt4 qt5 quicktime raw rdesktop readline recode rss samba sasl scanner sdl seccomp semantic-desktop session sharedmem shorten slang slp smp sndfile snmp soap sockets sound sox speex spell sqlite sqlite3 sse sse2 sse3 ssl startup-notification subversion suid svg syslog systemd szip taglib tcpd telepathy themes theora threads tiff timidity tokenizer truetype udev udisks unicode upnp upower usb v4l vala vcd vdpau video videos vim-syntax vnc vorbis vpn vpnc wavpack webkit widgets win32codecs wmf wxwidgets x264 xa xattr xcb xcomposite xface xft xinerama xml xmlrpc xmp xmpp xosd xpm xscreensaver xsl xulrunner xv xvid xvmc yahoo yaz zeroconf zip zlib" ABI_X86="64 32" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev mouse keyboard" KERNEL="linux" L10N="de en" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby21 ruby22 ruby23 ruby24" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON I'm seeing something similar, with the difference likely due to a different order of files being processed by this parallel build. In file included from …/pykde4-4.14.3-python2_7/sip/kdeui/sipkdeuipart1.cpp:7:0: …/pykde4-4.14.3/sip/kdeui/kxmlguibuilder.sip: In function ‘PyObject* meth_KXMLGUIBuilder_createContainer(PyObject*, PyObject*)’: …/pykde4-4.14.3-python2_7/sip/kdeui/sipAPIkdeui.h:7908:78: error: ‘sipWrapperType {aka struct _sipWrapperType}’ has no member named ‘type’ #define sipConvertFromNewInstance(p, wt, t) sipConvertFromNewType((p), (wt)->type, (t)) ^ …/pykde4-4.14.3/sip/kdeui/kxmlguibuilder.sip:52:21: note: in expansion of macro ‘sipConvertFromNewInstance’ if ((pyWidget = sipConvertFromNewInstance(res, sipClass_QWidget, NULL)) == NULL) ^ …/pykde4-4.14.3-python2_7/sip/kdeui/sipAPIkdeui.h:7908:78: error: ‘sipWrapperType {aka struct _sipWrapperType}’ has no member named ‘type’ #define sipConvertFromNewInstance(p, wt, t) sipConvertFromNewType((p), (wt)->type, (t)) ^ …/pykde4-4.14.3/sip/kdeui/kxmlguibuilder.sip:55:30: note: in expansion of macro ‘sipConvertFromNewInstance’ if ((pyContainerAction = sipConvertFromNewInstance(containerAction, sipClass_QAction, NULL)) == NULL) ^ make[2]: *** [CMakeFiles/python_module_PyKDE4_kdeui.dir/build.make:323: CMakeFiles/python_module_PyKDE4_kdeui.dir/sip/kdeui/sipkdeuipart1.cpp.o] Error 1 Looking at the SIP documentation of changes for 4.19: http://pyqt.sourceforge.net/Docs/sip4/incompatibilities.html#sip-v4-19 > Generated Type Structures for Imported Types > > As described in Generated Type Structures SIP generates a type > structure for each C structure, C++ class and namespace, mapped type > and named enum. Prior to this version every type structure in a > module was automatically available to any handwritten code in any > module that imported it. > > Starting with this version only those type structures needed by the > generated code are automatically available to handwritten code > possibly resulting in compiler errors. Handwritten code should be > changed to call sipFindType() to obtain a pointer to the required > type structure. So I'd say that's the problem here. Perhaps combined with the fact that sipConvertFromNewInstance is deprecated according to http://pyqt.sourceforge.net/Docs/sip4/c_api.html#c.sipConvertFromNewInstance I have a similar issue, this time involving dev-python/PyQt4-4.11.4-r1, but the relation is dev-python/sip-4.19. All my info is at https://gist.github.com/STrRedWolf/3f7cd41a611aa10587648dfbcf1babd3 . The following sed invocation may help turn all those deprecated combinations of sip…Instance(…, sipClass_…, …) insto sip…Type(…, sipType_…, …). sed -i -E 's/Instance(.*)sipClass_/Type\1sipType_/' "${S}"/sip/*/*.sip I've just successfully emerged pykde4, after including the above command into the build process like this: # mkdir -p /etc/portage/env/kde-apps # cat >/etc/portage/env/kde-apps/pykde4-4.14.3-r1 <<EOF post_src_unpack() { einfo "Adjusting for sip 4.19" sed -i -E 's/Instance(.*)sipClass_/Type\1sipType_/' "${S}"/sip/*/*.sip || die } EOF Unfortunately the ebuild doesn't contain tests, so I don't know whether the code I compiled works as intended. I guess chances are good, though. So it looks as though we don't need sipFindType after all. Which is a good thing, since I couldn't find out how exactly to format the string argument for this function. There is little documentation, and Google turned up very few examples. (In reply to Kelly Price from comment #4) > I have a similar issue, this time involving dev-python/PyQt4-4.11.4-r1, but > the relation is dev-python/sip-4.19. All my info is at > https://gist.github.com/STrRedWolf/3f7cd41a611aa10587648dfbcf1babd3 . This is caused by mixing stable PyQt4 with testing sip. (In reply to Michael Palimaka (kensington) from comment #6) > This is caused by mixing stable PyQt4 with testing sip. I run into the original issue (comment #0) with these packages: dev-python/PyQt4-4.12 dev-python/sip-4.19 kde-apps/pykde4-4.14.3-r1 (In reply to Martin von Gagern from comment #5) > # mkdir -p /etc/portage/env/kde-apps > # cat >/etc/portage/env/kde-apps/pykde4-4.14.3-r1 <<EOF > post_src_unpack() { > einfo "Adjusting for sip 4.19" > sed -i -E 's/Instance(.*)sipClass_/Type\1sipType_/' "${S}"/sip/*/*.sip || > die > } > EOF This allowed me to compile pykde4. Thanks! (In reply to Dennis Schridde from comment #7) > (In reply to Michael Palimaka (kensington) from comment #6) > > This is caused by mixing stable PyQt4 with testing sip. > > I run into the original issue (comment #0) with these packages: > dev-python/PyQt4-4.12 > dev-python/sip-4.19 > kde-apps/pykde4-4.14.3-r1 > > (In reply to Martin von Gagern from comment #5) > > # mkdir -p /etc/portage/env/kde-apps > > # cat >/etc/portage/env/kde-apps/pykde4-4.14.3-r1 <<EOF > > post_src_unpack() { > > einfo "Adjusting for sip 4.19" > > sed -i -E 's/Instance(.*)sipClass_/Type\1sipType_/' "${S}"/sip/*/*.sip || > > die > > } > > EOF > > This allowed me to compile pykde4. Thanks! My comment #6 was in response to comment #4, which is describing a different issue to the rest of the bug. By the way, pykde4 is completely unmaintained upstream so we can't count on a proper fix. There are very few revdeps remaining, so it would be interesting to know for which packages people are using to still need pykde4. The only package that depends on pykde4 on my machine is kde-apps/kajongg which I've never ever used. This is a dependency of kdegames-meta (with python use flag) which is a dependency of kde-apps-meta. kde-misc/synaptiks for me. Not aware of any alternatives, but I'd gladly try any suggestions in the spirit of removing some dead wood. (In reply to Steven Green from comment #10) > The only package that depends on pykde4 on my machine is kde-apps/kajongg > which I've never ever used. > > This is a dependency of kdegames-meta (with python use flag) which is a > dependency of kde-apps-meta. Fortunately a whole lot of changes hit kajongg master including porting away from pykde4, so we should see that in KDE Applications 17.04. (In reply to Dan Goodliffe from comment #11) > kde-misc/synaptiks for me. Not aware of any alternatives, but I'd gladly try > any suggestions in the spirit of removing some dead wood. I'm afraid that synaptiks (along with the rest of Plasma 4 and related packages) will be retired soon to kde-sunset. Had a quick search... kde-misc/kcm-touchpad look like it might do the trick. I'll trial it when I get near my laptop and see if it is a [drop-in] replacement. (In reply to Michael Palimaka (kensington) from comment #9) > By the way, pykde4 is completely unmaintained upstream so we can't count on > a proper fix. There are very few revdeps remaining, so it would be > interesting to know for which packages people are using to still need pykde4. # q depends -Q pykde4 kde-misc/kanyremote-6.3.5 (In reply to Dan Goodliffe from comment #13) > Had a quick search... kde-misc/kcm-touchpad look like it might do the trick. > I'll trial it when I get near my laptop and see if it is a [drop-in] > replacement. Turns out you don't need anything like that. I've been using the built in one in KDE for ages and didn't realise it wasn't synaptiks... so that's dead and so is pykde4 for me. Why not just temporarily remove kajongg from kdegames-meta? Anyone missing it can install manually, and we can have it back by 17.04. |