Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 570686 - kde-base/baloo-4.14.3 and kde-apps/kdepim-common-libs-4.14.10 - /usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::Document::get_data() const'
Summary: kde-base/baloo-4.14.3 and kde-apps/kdepim-common-libs-4.14.10 - /usr/lib64/li...
Status: RESOLVED DUPLICATE of bug 570690
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] KDE (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-01-03 09:14 UTC by Dennis Schridde
Modified: 2016-01-04 18:47 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (xz-compressed) (build.log.xz,56.08 KB, application/x-xz)
2016-01-03 09:15 UTC, Dennis Schridde
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Schridde 2016-01-03 09:14:50 UTC
When rebuilding my system for the GCC 5 C++11 ABI using "revdep-rebuild --library 'libstdc++.so.6' -- --exclude gcc", emerge fails to build kde-apps/kdepim-common-libs-4.14.10::gentoo and kde-apps/kontact-4.14.10::gentoo and I see following error:
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::Document::get_data() const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::QueryParser::parse_query(std::string const&, unsigned int, std::string const&)'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::QueryParser::add_prefix(std::string const&, std::string const&)'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::PostingSource::get_description() const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::PostingSource::serialise() const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::Error::get_description() const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::Database::Database(std::string const&)'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::PostingSource::unserialise(std::string const&) const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::ValueIterator::operator*() const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::Query::get_description() const'
/usr/lib64/libbaloopim.so.4: undefined reference to `Xapian::Query::Query(std::string const&, unsigned int, unsigned int)'
collect2: error: ld returned 1 exit status
incidenceeditor-ng/CMakeFiles/kincidenceeditor.dir/build.make:132: recipe for target 'incidenceeditor-ng/kincidenceeditor' failed

# q file /usr/lib64/libbaloopim.so.4
kde-base/baloo (/usr/lib64/libbaloopim.so.4)

I wonder whether this is related to 2015-10-22-gcc-5-new-c++11-abi (and GCC does not actually miss std::string, but std::__cxx11::string), and emerge just messes up the order of dependencies, rebuilding the depending package before the dependency (and thus trying to link a package built with the new C++11 ABI against a library built using the old one).
Comment 1 Dennis Schridde 2016-01-03 09:15:36 UTC
Created attachment 421724 [details]
build.log (xz-compressed)
Comment 2 Dennis Schridde 2016-01-03 09:31:13 UTC
emerge --info kde-base/kdelibs kde-apps/libkcddb kde-base/baloo kde-apps/kdepim-common-libs kde-apps/kontact sys-devel/gcc media-libs/musicbrainz app-misc/strigi
Portage 2.2.26 (python 3.4.3-final-0, default/linux/amd64/13.0/desktop/plasma/systemd, gcc-5.3.0, glibc-2.22-r1, 4.3.3-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.3.3-gentoo-x86_64-AMD_A10-7800_Radeon_R7,_12_Compute_Cores_4C+8G-with-gentoo-2.2
KiB Mem:    15381472 total,   6705564 free
KiB Swap:          0 total,         0 free
Timestamp of repository gentoo: Sat, 02 Jan 2016 09:15:02 +0000
sh bash 4.3_p42
ld GNU ld (Gentoo 2.25 p1.2) 2.25
ccache version 3.2.4 [disabled]
app-shells/bash:          4.3_p42::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.22.1::gentoo
dev-lang/python:          2.7.11-r1::gentoo, 3.4.3-r7::gentoo, 3.5.1-r2::gentoo
dev-util/ccache:          3.2.4::gentoo
dev-util/cmake:           3.4.1::gentoo
dev-util/pkgconfig:       0.29::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/sandbox:         2.10-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69-r1::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.12.6::gentoo, 1.13.4::gentoo, 1.14.1::gentoo, 1.15-r1::gentoo
sys-devel/binutils:       2.25-r1::gentoo
sys-devel/gcc:            5.3.0::gentoo
sys-devel/gcc-config:     1.8-r1::gentoo
sys-devel/libtool:        2.4.6-r1::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 4.3::gentoo (virtual/os-headers)
sys-libs/glibc:           2.22-r1::gentoo
Repositories:

gentoo
    location: /var/cache/portage/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.de.gentoo.org/gentoo-portage
    priority: -1000

aegypius
    location: /var/lib/layman/aegypius
    sync-type: laymansync
    sync-uri: git://github.com/aegypius/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

kde
    location: /var/lib/layman/kde
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/kde.git
    masters: gentoo
    priority: 50

rust
    location: /var/lib/layman/rust
    sync-type: laymansync
    sync-uri: git://github.com/gentoo/gentoo-rust.git
    masters: gentoo
    priority: 50

sage-on-gentoo
    location: /var/lib/layman/sage-on-gentoo
    sync-type: laymansync
    sync-uri: git://github.com/cschwan/sage-on-gentoo.git
    masters: gentoo science
    priority: 50

science
    location: /var/lib/layman/science
    sync-type: laymansync
    sync-uri: git://anongit.gentoo.org/proj/sci.git
    masters: gentoo
    priority: 50

local
    location: /var/cache/portage/local
    masters: gentoo science
    priority: 100

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-pipe -O2 -march=bdver3"
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"
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.0/ext-active/ /etc/php/cgi-php7.0/ext-active/ /etc/php/cli-php7.0/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-pipe -O2 -march=bdver3"
DISTDIR="/var/cache/portage/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going --nospinner"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs buildsyspkg compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ http://distfiles.gentoo.org"
LANG="en_GB.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS="-j3"
PKGDIR="/var/cache/portage/packages"
PORTAGE_COMPRESS="xz"
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"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac aacplus aacs acl acpi alsa amd64 appindicator archive audit avahi bash-completion bdplus berkdb bluetooth bluray branding bzip2 cairo caps cdda cddb cdio cdr celt cjk cli colord conntrack cracklib crypt cups cxx dbus declarative dirac dri dts dvb dvd dvdr egl emboss encode exif fam fax ffmpeg firefox flac fontconfig fortran gdbm geoclue geolocation gif glamor gmp gpm gstreamer gtk ibus iconv ipv6 jpeg jpeg2k kde kipi ladspa latex lcms ldap libinput libnotify libproxy libsecret lua_target_lua5-2 lv2 lz4 lzma lzo mad mmx mmxext mng modemmanager modplug modules mp3 mp4 mpeg mplayer mtp multilib multitarget mysql ncurses netlink networkmanager nls nptl ogg openal opencl openexr opengl openmax openmp opus pam pango pcap pch pcre pdf phonon plasma png policykit ppds pulseaudio qml qt3support qt4 qt5 readline rtmp samba scanner schroedinger sctp sdl seccomp semantic-desktop session speex spell sse sse2 ssl startup-notification subversion svg systemd tcpd theora threads tiff truetype udev udisks unicode upnp upnp-av upower usb v4l vaapi vdpau vorbis vpx wavpack wayland webp widgets x264 x265 xattr xcb xcomposite xinerama xml xrandr xscreensaver xv xvid xz zeroconf zlib" ABI_X86="64" ALSA_CARDS="hda-intel" 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="stage words flow sheets gemini" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="3dnow 3dnowext mmx mmxext sse sse2 sse3 ssse3 sse4 sse4a sse4_1 sse4_2" DRACUT_MODULES="btrfs caps systemd" ELIBC="glibc" ENLIGHTENMENT_MODULES="*" 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" GRUB_PLATFORMS="coreboot efi-64 pc" INPUT_DEVICES="evdev joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de en en_GB ar fa" LIRC_DEVICES="devinput" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="amdgpu radeon radeonsi" 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, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

kde-base/kdelibs-4.14.15-r1::gentoo was built with the following:
USE="acl alsa bzip2 crypt handbook jpeg2k lzma nls openexr opengl (policykit) spell ssl udev udisks upower zeroconf (-altivec) (-aqua) -debug -doc (-fam) -kerberos -libressl -test" ABI_X86="64" CPU_FLAGS_X86="3dnow mmx sse sse2"
CFLAGS="-pipe -O2 -march=bdver3 -g"
CXXFLAGS="-pipe -O2 -march=bdver3 -g"


kde-apps/libkcddb-15.08.3::gentoo was built with the following:
USE="handbook musicbrainz (-aqua) -debug" ABI_X86="64"


kde-base/baloo-4.14.3::gentoo was built with the following:
USE="minimal (-aqua) -debug" ABI_X86="64"


kde-apps/kdepim-common-libs-4.14.10::gentoo was built with the following:
USE="google (-aqua) -debug" ABI_X86="64"
CFLAGS="-pipe -O2 -march=bdver3 -g"
CXXFLAGS="-pipe -O2 -march=bdver3 -g"


kde-apps/kontact-4.14.10::gentoo was built with the following:
USE="handbook (-aqua) -debug" ABI_X86="64"
CFLAGS="-pipe -O2 -march=bdver3 -g"
CXXFLAGS="-pipe -O2 -march=bdver3 -g"


sys-devel/gcc-5.3.0::gentoo was built with the following:
USE="cilk cxx fortran gcj go graphite (multilib) nls nptl openmp (policykit) sanitize (-altivec) (-awt) -debug -doc (-fixed-point) (-hardened) -jit (-libssp) (-multislot) -nopie -nossp -objc -objc++ -objc-gc -regression-test -vanilla" ABI_X86="64"


media-libs/musicbrainz-5.0.1::gentoo was built with the following:
USE="(policykit) -examples -test" ABI_X86="64"


app-misc/strigi-0.7.8-r1::gentoo was built with the following:
USE="dbus exif ffmpeg inotify qt4 -clucene -debug (-fam) -libav (-log) -test" ABI_X86="64"
Comment 3 Andreas Sturmlechner gentoo-dev 2016-01-03 10:06:44 UTC
Has xapian not come up for rebuild before?
Comment 4 Dennis Schridde 2016-01-03 10:35:35 UTC
revdep-rebuild is still running.

Xapian is not scheduled for merge:
# emerge -pv --resume | grep xapian
<no output>

It probably was emerged using GCC 5.3:
# genlop -t xapian
     Sat Jan  2 11:53:51 2016 >>> dev-libs/xapian-1.2.22
       merge time: 1 minute and 58 seconds.
# ls -l /etc/env.d/04gcc-x86_64-pc-linux-gnu
-rw-r--r-- 1 root root 231 Dec 31 15:33 /etc/env.d/04gcc-x86_64-pc-linux-gnu

Apparently the affected packages were rebuilt afterwards:
# ls -l /var/tmp/portage/*/*/temp/build.log*
[...]
-rw-rw---- 1 portage portage  57K Jan  3 05:17 /var/tmp/portage/kde-apps/kdepim-common-libs-4.14.10/temp/build.log.xz
-rw-rw---- 1 portage portage 118K Jan  3 05:35 /var/tmp/portage/kde-apps/kontact-4.14.10/temp/build.log
[...]

So the issue seems not to be the build-order...
Comment 5 Dennis Schridde 2016-01-03 10:44:52 UTC
Sorry, we made a mistake. We probably should not look at dev-libs/xapian, but at kde-base/baloo:
# emerge -pv --resume | grep baloo
[ebuild   R    ] kde-apps/baloo-widgets-15.08.3:5::gentoo  USE="-debug {-test}" 0 KiB
[ebuild   R    ] kde-base/baloo-4.14.3:4/4.14::gentoo  USE="minimal (-aqua) -debug" 0 KiB

# genlop -t baloo
 * kde-base/baloo
[...]
     Thu Jul 30 10:16:31 2015 >>> kde-base/baloo-4.14.3
       merge time: 1 minute and 31 seconds.
[...]
     Sun Jan  3 05:28:11 2016 >>> kde-frameworks/baloo-5.17.0
       merge time: 1 minute and 37 seconds.

(Note that genlop displays the wrong package heading "kde-base/baloo", when it also shows the times for "kde-frameworks/baloo". An unrelated bug.)

So kde-apps/kdepim-common-libs-4.14.10::gentoo was remerged before kde-frameworks/baloo-5.17.0 and kde-apps/kontact-4.14.10::gentoo afterwards. kde-base/baloo-4.14.3 was not yet remerged. But kde-apps/kdepim-common-libs actually depends on kde-base/baloo, so that one should have been rebuilt beforehand, but wasn't - it's still scheduled for remerge at a later time (s.a.). So this is indeed an ordering bug.
Comment 6 Andreas Sturmlechner gentoo-dev 2016-01-03 11:40:22 UTC
I am not sure we can rely on portage's ordering here, since technically the dependencies are fulfilled all the time - they are present after all, portage doesn't know the ABI is broken. And we have seen a few times that errors like that yours happen despite running the upgrade, typically strigi not coming up before kdelibs or some application coming up before kdelibs.
Comment 7 Dennis Schridde 2016-01-03 14:43:32 UTC
Could something like a --strict-order option be added to portage, which uses the information of the dependency tree to sort the packages given on the commandline?
Comment 8 Michael Palimaka (kensington) gentoo-dev 2016-01-04 17:03:42 UTC
Is there anything here we can do - or is bug #570690 to cover the portage side enough?
Comment 9 Dennis Schridde 2016-01-04 18:47:57 UTC
(In reply to Michael Palimaka (kensington) from comment #8)
> Is there anything here we can do - or is bug #570690 to cover the portage
> side enough?

Yes, bug #570690 and this one should probably be seen as multiple instances of the same root cause.

*** This bug has been marked as a duplicate of bug 570690 ***