Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 687552

Summary: dev-libs/glib-2.58.3 - configure: error: *** Could not find libmount
Product: Gentoo Linux Reporter: Anton Gubarkov <anton.gubarkov>
Component: Current packagesAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: UNCONFIRMED ---    
Severity: normal CC: dev-portage, esigra, josef64, kripton, mgorny
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 506276, 689644    

Description Anton Gubarkov 2019-06-07 05:32:52 UTC
After switching to 17.1/gnome/systemd profile I cannot rebuild glib.

....
checking for LIBMOUNT... no
configure: error: *** Could not find libmount
Comment 1 Anton Gubarkov 2019-06-07 05:33:20 UTC
PF16W6Y2 ~ # emerge --info glib
Portage 2.3.67 (python 3.6.8-final-0, default/linux/amd64/17.1/desktop/gnome/systemd, gcc-9.1.0, glibc-2.29-r2, 5.1.7-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.1.7-gentoo-x86_64-Intel-R-_Core-TM-_i7-8850H_CPU_@_2.60GHz-with-gentoo-2.6
KiB Mem:    32612764 total,  18019408 free
KiB Swap:   33554428 total,  33554428 free
Timestamp of repository gentoo: Thu, 06 Jun 2019 17:45:23 +0000
Head commit of repository gentoo: da9b8adc059d755d34b935bc2847f52aedafd981

sh bash 5.0_p7
ld GNU ld (Gentoo 2.32 p2) 2.32.0
app-shells/bash:          5.0_p7::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.30.0::gentoo
dev-lang/python:          2.7.16::gentoo, 3.6.8::gentoo
dev-util/cmake:           3.14.5::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/sandbox:         2.17::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.16.1-r1::gentoo
sys-devel/binutils:       2.32-r1::gentoo
sys-devel/gcc:            8.3.0-r1::gentoo, 9.1.0-r1::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r5::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 5.0-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: git://github.com/gentoo-mirror/gentoo.git
    priority: -1000

dlang
    location: /var/lib/layman/dlang
    masters: gentoo
    priority: 50

gentoo-zh
    location: /var/lib/layman/gentoo-zh
    masters: gentoo
    priority: 50

steam-overlay
    location: /var/lib/layman/steam-overlay
    masters: gentoo
    priority: 50

tlp
    location: /var/lib/layman/tlp
    masters: gentoo
    priority: 50

rugubara
    location: /var/lib/layman/rugubara
    masters: gentoo
    priority: 100

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -mtune=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /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/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -mtune=native"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe -mtune=native"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe -mtune=native"
GENTOO_MIRRORS="http://mirror.netcologne.de/gentoo/ http://mirror.yandex.ru/gentoo-distfiles/"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8"
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 acl acpi aio alsa amd64 berkdb bluetooth branding bzip2 cacert cairo cdda cdr cli client colord crypt cups cxx dbus djvu dri dri3 dts dvd dvdr eds emboss encode evo exif fam fat ffmpeg flac fortran gdbm gif glamor gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk iconv introspection ipv6 jack jpeg jpeg2k lcms ldap libnotify libsecret libtirpc libzfs lm_sensors lv2 mad mng mp3 mp4 mpeg multilib native-headset nautilus ncat ncurses networkmanager nls nptl nvenc nvme ogg opengl openmp opus pam pango pcre pdf png policykit ppds pulseaudio qt5 raw readline sdl sdl2 seccomp smp sna sound spell spice ssl startup-notification svg systemd tcpd thunderbolt tiff tracker truetype udev udisks uefi unicode upower usb usbredir user-session vaapi vala vdpau virgl vorbis wayland wxwidgets x264 x265 xattr xcb xml xv xvid zeroconf zfs zlib" ABI_X86="64" 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="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput wacom" KERNEL="linux" L10N="en ru" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-1" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby24" USERLAND="GNU" VIDEO_CARDS="intel i965 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, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

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

dev-libs/glib-2.58.3::gentoo was built with the following:
USE="dbus (mime) xattr -debug (-fam) -gtk-doc (-selinux) -static-libs -systemtap -test -utils" ABI_X86="32 (64) (-x32)"
Comment 2 Anton Gubarkov 2019-06-07 08:39:21 UTC
Went thru OK after rebuild of mesa.
Comment 3 Anton Gubarkov 2019-06-07 08:41:31 UTC
(In reply to Anton Gubarkov from comment #2)
> Went thru OK after rebuild of mesa.

Wrong. Most probably after rebuild of util-linux. 
I've resumed the failing merges from emerge -1v /lib32 /usr/lib32 several times.

When I ran emerge -1v /lib32 /usr/lib32 for the second time, there were no errors reported.
Comment 4 josef.95 2019-06-07 11:49:20 UTC
(In reply to Anton Gubarkov from comment #0)
> After switching to 17.1/gnome/systemd profile I cannot rebuild glib.
> 
> ....
> checking for LIBMOUNT... no
> configure: error: *** Could not find libmount

Hm, just a idea. Does --with-bdeps=y --deep
help?
eg, emerge -av1 --with-bdeps=y --deep /lib32 /usr/lib32
Comment 5 Mart Raudsepp gentoo-dev 2019-06-16 13:01:31 UTC
I don't think there's anything to do here? libmount does come from util-linux indeed, and dev-libs/glib has an appropriate multilib dependency on that on Linux.
Comment 6 Cecil Curry 2019-07-02 20:29:59 UTC
> I don't think there's anything to do here?

There had better be something to do here. Multiple users on the Gentoo forums (including myself) have hit this exact same blocker over the past week -- including:

https://forums.gentoo.org/viewtopic-t-1097138-start-0.html
https://forums.gentoo.org/viewtopic-t-1097852-start-0.html

> dev-libs/glib has an appropriate multilib dependency on that on Linux.

Clearly, this dependency is not working as intended.

Happily, I can confirm that manually reinstalling the "util-linux" package after migrating to the "17.1" profile suffices to resolve this issue for both me and users in the above forum threads. Some combination of the "glib", "util-linux", and/or "unsymlink-lib" ebuilds require immediate patching.

This is a fairly high-priority issue.
Comment 7 Mart Raudsepp gentoo-dev 2019-07-03 05:17:53 UTC
It's not working as intended due to portage bugs, nothing I can do as maintainer here. CCing portage team..
Comment 8 Zac Medico gentoo-dev 2019-07-04 20:54:00 UTC
(In reply to Cecil Curry from comment #6)
> Happily, I can confirm that manually reinstalling the "util-linux" package
> after migrating to the "17.1" profile suffices to resolve this issue for
> both me and users in the above forum threads. Some combination of the
> "glib", "util-linux", and/or "unsymlink-lib" ebuilds require immediate
> patching.

We should compare the list of files installed by util-linux before and after that rebuild. Use this command to list the files:

> portageq contents / $(portageq match / sys-apps/util-linux)
Comment 9 Zac Medico gentoo-dev 2019-07-04 21:00:15 UTC
If the rebuild cases the list of util-linux files to change, and there's no USE change, then there's no way for portage to recognize that a rebuild it needed.
Comment 10 Mart Raudsepp gentoo-dev 2019-07-06 10:28:09 UTC
(In reply to Zac Medico from comment #9)
> If the rebuild cases the list of util-linux files to change, and there's no
> USE change, then there's no way for portage to recognize that a rebuild it
> needed.

util-linux on 17.0 profiles installs /usr/lib32/libmount.so.1.1.0 and co.

People are doing migration per instructions as follows:

emerge -1v /lib32 /usr/lib32

Thus both glib and util-linux are supposed to be grabbed into the package list to be rebuilt, but portage is ordering glib to be rebuilt before util-linux, ignoring the util-linux dep (on linux) from glib.
Comment 11 Mart Raudsepp gentoo-dev 2019-07-06 10:31:15 UTC
CCing mgorny as one of the authors of the migration instructions too, for potential comments and insight.
Comment 12 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2019-07-06 11:18:48 UTC
The instructions already recommend using '--deep' for some time [1].  Maybe they should suggest '--jobs 1' as well.  If that doesn't help, I don't have any other ideas.

[1] https://gentoo.org/support/news-items/2019-06-05-amd64-17-1-profiles-are-now-stable.html
Comment 13 Mart Raudsepp gentoo-dev 2019-07-06 11:40:03 UTC
Did anyone having the problem (reporting here, on the forums, or otherwise) already use --deep or that's the crux of the matter?
Comment 14 Mathy Vanvoorden 2019-08-05 18:11:33 UTC
Got bitten by this too, using --deep. I tried --jobs 1 but that also did not put util-linux in front of glib.

Did a manual install of util-linux and glib stopped complaining about libmount, but there were more issues lurking, this is a list of dependencies that were not resolved on my system.

* glib needs libpcre
* libxcb needs xcb-proto
* libX11 needs libxcb
* libgudev needs (lib)udev

I have a pretty similar system on which I didn't do the profile switch yet, willing to perform some tests on that if it can help to have an "untouched" system.