Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 629704 - dev-util/pkgconfig-0.28-r2 - EOVERFLOW when scanning pkgconfig directory (multilib)
Summary: dev-util/pkgconfig-0.28-r2 - EOVERFLOW when scanning pkgconfig directory (mul...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Freedesktop bugs
URL:
Whiteboard:
Keywords:
: 629724 (view as bug list)
Depends on: 629968
Blocks: lfs-tracker
  Show dependency tree
 
Reported: 2017-09-02 20:59 UTC by Toralf Förster
Modified: 2018-01-23 03:14 UTC (History)
3 users (show)

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


Attachments
emerge-info.txt (emerge-info.txt,14.39 KB, text/plain)
2017-09-02 20:59 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,9.91 KB, text/plain)
2017-09-02 20:59 UTC, Toralf Förster
Details
environment (environment,107.47 KB, text/plain)
2017-09-02 20:59 UTC, Toralf Förster
Details
etc.portage.tbz2 (etc.portage.tbz2,11.66 KB, application/x-bzip)
2017-09-02 20:59 UTC, Toralf Förster
Details
logs.tbz2 (logs.tbz2,13.66 KB, application/x-bzip)
2017-09-02 20:59 UTC, Toralf Förster
Details
net-libs:gnutls-3.5.13:20170902-203118.log (net-libs:gnutls-3.5.13:20170902-203118.log,8.86 KB, text/plain)
2017-09-02 20:59 UTC, Toralf Förster
Details
temp.tbz2 (temp.tbz2,28.89 KB, application/x-bzip)
2017-09-02 21:00 UTC, Toralf Förster
Details
strace.out (strace.out,5.22 KB, text/plain)
2017-09-03 18:32 UTC, Toralf Förster
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2017-09-02 20:59:36 UTC
checking for getentropy... no
checking for NETTLE... no
configure: error: 
  ***
  *** Libnettle 3.1 was not found.


=== This is an issue at stable ===


  -------------------------------------------------------------------

  This is an stable amd64 chroot image at a tinderbox (==build bot)
  name: 13.0-desktop_stable-abi32+64_20170902-123437

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-5.4.0 *

Available Python interpreters, in order of preference:
  [1]   python3.4
  [2]   python2.7 (fallback)




emerge -qpv net-libs/gnutls
[ebuild  N    ] net-libs/gnutls-3.5.13  USE="cxx idn nls openssl seccomp tls-heartbeat zlib -dane -doc -examples -guile -openpgp -pkcs11 -sslv2 -sslv3 -static-libs {-test} (-test-full) -tools -valgrind" ABI_X86="32 (64) (-x32)" LINGUAS="-cs -de -en -fi -fr -it -ms -nl -pl -sv -uk -vi -zh_CN"
Comment 1 Toralf Förster gentoo-dev 2017-09-02 20:59:41 UTC
Created attachment 491946 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2017-09-02 20:59:45 UTC
Created attachment 491948 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2017-09-02 20:59:48 UTC
Created attachment 491950 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2017-09-02 20:59:51 UTC
Created attachment 491952 [details]
etc.portage.tbz2
Comment 5 Toralf Förster gentoo-dev 2017-09-02 20:59:54 UTC
Created attachment 491954 [details]
logs.tbz2
Comment 6 Toralf Förster gentoo-dev 2017-09-02 20:59:58 UTC
Created attachment 491956 [details]
net-libs:gnutls-3.5.13:20170902-203118.log
Comment 7 Toralf Förster gentoo-dev 2017-09-02 21:00:01 UTC
Created attachment 491958 [details]
temp.tbz2
Comment 8 Alon Bar-Lev (RETIRED) gentoo-dev 2017-09-03 04:30:37 UTC
---
configure:9759: checking for NETTLE
configure:9767: $PKG_CONFIG --exists --print-errors "nettle >= 3.1"
Package nettle was not found in the pkg-config search path.
Perhaps you should add the directory containing `nettle.pc'
to the PKG_CONFIG_PATH environment variable
No package 'nettle' found
configure:9770: $? = 1
configure:9785: $PKG_CONFIG --exists --print-errors "nettle >= 3.1"
Package nettle was not found in the pkg-config search path.
Perhaps you should add the directory containing `nettle.pc'
to the PKG_CONFIG_PATH environment variable
No package 'nettle' found
configure:9788: $? = 1
No package 'nettle' found
configure:9816: result: no
configure:9819: error: 
---

Please:
$ equery files nettle | grep pkgconfig
$ pkg-config --libs nettle
Comment 9 Toralf Förster gentoo-dev 2017-09-03 07:26:48 UTC
(In reply to Alon Bar-Lev from comment #8)
tinderbox@mr-fox ~ $ scw 13.0-desktop_stable-abi32+64_20170902-123437
mr-fox / # equery files nettle | grep pkgconfig
/usr/lib32/pkgconfig
/usr/lib32/pkgconfig/hogweed.pc
/usr/lib32/pkgconfig/nettle.pc
/usr/lib64/pkgconfig
/usr/lib64/pkgconfig/hogweed.pc
/usr/lib64/pkgconfig/nettle.pc
mr-fox / # pkg-config --libs nettle
-lnettle 
mr-fox / # exit
exit
Comment 10 Alon Bar-Lev (RETIRED) gentoo-dev 2017-09-03 10:23:51 UTC
OK, so files are in place.

$ cat /usr/lib32/pkgconfig/nettle.pc

$ PKG_CONFIG_DEBUG_SPEW=1 /usr/bin/i686-pc-linux-gnu-pkg-config --exists --print-errors "nettle >= 3.1"
Comment 11 Toralf Förster gentoo-dev 2017-09-03 15:16:35 UTC
(In reply to Alon Bar-Lev from comment #10)
mr-fox / # PKG_CONFIG_DEBUG_SPEW=1 /usr/bin/i686-pc-linux-gnu-pkg-config --exists --print-errors "nettle >= 3.1"PKG_CONFIG_DEBUG_SPEW variable enabling debug spew
Adding directory '/usr/lib32/pkgconfig' from PKG_CONFIG_PATH
Adding directory '/usr/share/pkgconfig' from PKG_CONFIG_PATH
Global variable definition 'pc_sysrootdir' = '/'
Global variable definition 'pc_top_builddir' = '$(top_builddir)'
Error printing disabled by default due to use of output options --exists, --atleast/exact/max-version or no output option at all. Value of --print-errors: 1
Error printing enabled
Adding virtual 'pkg-config' package to list of known packages
Scanning directory '/usr/lib32/pkgconfig'
Scanning directory '/usr/share/pkgconfig'
Looking for package 'nettle'
Looking for package 'nettle-uninstalled'
Package nettle was not found in the pkg-config search path.
Perhaps you should add the directory containing `nettle.pc'
to the PKG_CONFIG_PATH environment variable                                                                     
No package 'nettle' found                                                                                       
mr-fox / # cat /usr/lib32/pkgconfig/nettle.pc                                                                   
prefix=/usr                                                                                                     
exec_prefix=${prefix}                                                                                           
libdir=/usr/lib32                                                                                               
includedir=${prefix}/include                                                                                    
                                                                                                                
Name: Nettle                                                                                                    
Description: Nettle low-level cryptographic library (symmetric algorithms)                                      
URL: http://www.lysator.liu.se/~nisse/nettle                                                                    
Version: 3.3                                                                                                    
Libs: -L${libdir} -lnettle                                                                                      
Cflags: -I${includedir}
Comment 12 Alon Bar-Lev (RETIRED) gentoo-dev 2017-09-03 18:10:15 UTC
This is an issue of pkg-config, please try to strace it and see what exactly does it tries to open.
Comment 13 Toralf Förster gentoo-dev 2017-09-03 18:32:08 UTC
Created attachment 492152 [details]
strace.out

strace
Comment 14 Alon Bar-Lev (RETIRED) gentoo-dev 2017-09-03 18:35:27 UTC
---
open("/usr/lib32/pkgconfig", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=8192, ...}) = 0
write(2, "Scanning directory '/usr/lib32/p"..., 42) = 42
getdents(3, 0x8a6348c, 32768)           = -1 EOVERFLOW (Value too large for defined data type)
close(3)                                = 0
---

I suggest you switch into pkgconf as me :)
Comment 15 Alon Bar-Lev (RETIRED) gentoo-dev 2017-09-03 18:39:50 UTC
*** Bug 629724 has been marked as a duplicate of this bug. ***
Comment 16 Toralf Förster gentoo-dev 2017-09-03 19:30:57 UTC
(In reply to Alon Bar-Lev from comment #14)
mr-fox / # ls /usr/lib32/pkgconfig | wc
    128     128    1552
Is 128 a bad number ?
Comment 17 Mike Gilbert gentoo-dev 2017-09-03 21:14:27 UTC
A quick google search seems to indicate that EOVERFLOW from getdents(2) is usually triggered when the kernel wants to return a 64-bit inode number in a stat struct that only has a 32-bit field for it.

https://www.tcm.phy.cam.ac.uk/sw/inodes64.html
Comment 18 Alon Bar-Lev (RETIRED) gentoo-dev 2017-09-03 21:15:11 UTC
(In reply to Toralf Förster from comment #16)
> (In reply to Alon Bar-Lev from comment #14)
> mr-fox / # ls /usr/lib32/pkgconfig | wc
>     128     128    1552
> Is 128 a bad number ?

I am guessing:

https://www.tcm.phy.cam.ac.uk/sw/inodes64.html
Comment 19 Mike Gilbert gentoo-dev 2017-09-03 21:17:29 UTC
What USE flags was dev-util/pkgconfig built with? Specifically, is it using the system glib, or the internal (bundled) copy?
Comment 20 Toralf Förster gentoo-dev 2017-09-03 21:34:50 UTC
(In reply to Mike Gilbert from comment #19)


mr-fox / # emerge -qpv dev-util/pkgconfig
[ebuild   R   ] dev-util/pkgconfig-0.28-r2  USE="-hardened -internal-glib" ABI_X86="32 (64) (-x32)" 

mr-fox / # emerge --info --verbose=n dev-util/pkgconfig
Portage 2.3.6 (python 3.4.5-final-0, default/linux/amd64/13.0/desktop, gcc-5.4.0, glibc-2.23-r4, 4.13.0 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.13.0-x86_64-Intel-R-_Core-TM-_i7-3930K_CPU_@_3.20GHz-with-gentoo-2.3
KiB Mem:    65274868 total,  63903652 free
KiB Swap:   67108860 total,  67108860 free
Timestamp of repository gentoo: Sun, 03 Sep 2017 19:44:11 +0000
sh bash 4.3_p48-r1
ld GNU ld (Gentoo 2.28.1 p1.0) 2.28.1
app-shells/bash:          4.3_p48-r1::gentoo
dev-lang/perl:            5.24.1-r2::gentoo
dev-lang/python:          2.7.12::gentoo, 3.4.5::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.3::gentoo
sys-apps/openrc:          0.28::gentoo
sys-apps/sandbox:         2.10-r3::gentoo
sys-devel/autoconf:       2.69::gentoo
sys-devel/automake:       1.11.6-r1::gentoo, 1.15-r2::gentoo
sys-devel/binutils:       2.28.1::gentoo
sys-devel/gcc:            5.4.0-r3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1::gentoo
sys-kernel/linux-headers: 4.4::gentoo (virtual/os-headers)
sys-libs/glibc:           2.23-r4::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: 1

tinderbox
    location: /tmp/tb/data/portage
    masters: gentoo
    priority: 2

local
    location: /usr/local/portage
    masters: gentoo
    priority: 99

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native -Wall"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/stunnel/stunnel.conf /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=native"
DISTDIR="/var/tmp/distfiles"
EMERGE_DEFAULT_OPTS="--verbose --verbose-conflicts --color=n --nospinner --tree --quiet-build --with-bdeps=y"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox 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="http://ftp.uni-erlangen.de/pub/mirrors/gentoo rsync://mirror.netcologne.de/gentoo/ ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gor.bytemark.co.uk/gentoo/ rsync://ftp.snt.utwente.nl/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j1"
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 abook acl acpi activities aesicm aio airgraph-ng all_sfx alsa amd64 amqplib bab berkdb bluetooth branding bzip2 cairo ccache cdda cdr charmproduction cli cmkopt consolekit cpusets cracklib crypt cups cxx dbus default-libcxx diags dialogs double dri dts dvd dvdr ecdsa emboss encode exif fam faxpp filecaps firefox flac fortran fortune free freebox g726 game-engine gdbm gif glamor gpm gtk help iconv inifile ipv6 jabbersearch jpeg lcms ldap libidn2 libnotify lm_sensors log-error mad mbim mcast mng module_auth_always_online modules mp3 mp4 mpeg mruby multilib ncurses netlink netplay nls nptl odbc_internal ogg ogm okteta openconnect opengl openmp oss pam pango pcre pdb2pka pdf png policykit ppds qt3support qt4 randpktdump readline sdl seccomp session sguil silex spell ssh ssl ssp startup-notification svg tapi tcpd tiff truetype udev udisks udunits unicode upower ups_drivers_genericups usb vorbis websocket wxwidgets x264 xattr xcb xenstore xindy xine xml xmlpatterns xnest xplanet xv xvid zemberek zlib zypper" ABI_X86="32 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="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2 aes avx popcnt 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 keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_4" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby22" USERLAND="GNU" 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, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

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

dev-util/pkgconfig-0.28-r2::gentoo was built with the following:
USE="-hardened -internal-glib" ABI_X86="32 (64) (-x32)"
Comment 21 Mike Gilbert gentoo-dev 2017-09-03 21:53:49 UTC
Ok, so probably a bug in the system glib.

One more test to confirm the inode number theory:

1. ls -i /usr/lib32/pkgconfig
2. Look for entries with especially large values (> 4294967296)
Comment 22 Toralf Förster gentoo-dev 2017-09-04 17:56:09 UTC
(In reply to Mike Gilbert from comment #21)
mr-fox / # ls -i /usr/lib32/pkgconfig
6272022812 alsa.pc                   6272787814 libcap.pc                     6272322226 mount.pc
6274460948 ao.pc                     6273290629 libcares.pc                   6271599241 ncurses.pc
6272322225 blkid.pc                  6272878984 libdaemon.pc                  6271599242 ncurses++.pc
6273678127 celt.pc                   6274801197 libdv.pc                      6271599246 ncurses++w.pc
6274785036 check.pc                  6272391571 libdw.pc                      6271599247 ncursesw.pc
6274775485 cppunit.pc                6272391570 libelf.pc                     6271761306 nettle.pc
6274317365 damageproto.pc            6275132598 libev.pc                      6271608803 nspr.pc
6271850013 expat.pc                  6272309860 libffi.pc                     6272255245 ogg.pc
6271850014 expatw.pc                 6267346947 libfstrm.pc                   6271599243 panel.pc
6272322228 fdisk.pc                  6273211196 libhubbub.pc                  6271599248 panelw.pc
6272863635 fftw3f_omp.pc             6272370573 libidn2.pc                    6273560503 pciaccess.pc
6272863632 fftw3f.pc                 6272251827 libidn.pc                     6269804160 pixman-1.pc
6272863636 fftw3l_omp.pc             6271847613 libjpeg.pc                    6271638966 protobuf-lite.pc
6272863634 fftw3l.pc                 6271805113 liblzma.pc                    6271638965 protobuf.pc
6272863637 fftw3_omp.pc              6272025984 libmikmod.pc                  6271604225 randrproto.pc
6272863633 fftw3.pc                  6271608460 libmng.pc                     6273529999 re2.pc
6272293425 flac.pc                   6273213078 libparserutils.pc             6275188775 sane-backends.pc
6272293426 flac++.pc                 6273531845 libpci.pc                     6273650841 sigc++-2.0.pc
6271599239 form.pc                   6271750381 libpcrecpp.pc                 6273539730 slang.pc
6271599244 formw.pc                  6271750375 libpcre.pc                    6272322227 smartcols.pc
6272369212 freetype2.pc              6271750380 libpcreposix.pc               6272293433 sndfile.pc
6273578544 gamin.pc                  6271853756 libpng16.pc                   6272411452 sqlite3.pc
6271750935 gio-2.0.pc                6271853757 libpng.pc                     6274773380 tbbmalloc.pc
6271750936 gio-unix-2.0.pc           6274801186 libraw1394.pc                 6274773381 tbbmalloc_proxy.pc
6271750929 glib-2.0.pc               6272308143 librevenge-0.0.pc             6274773379 tbb.pc
6271750931 gmodule-2.0.pc            6272356759 librevenge-generators-0.0.pc  6272309827 tcl.pc
6271750932 gmodule-export-2.0.pc     6272356760 librevenge-stream-0.0.pc      6274113950 tdb.pc
6271750933 gmodule-no-export-2.0.pc  6271805083 libseccomp.pc                 6272318601 uuid.pc
6271750930 gobject-2.0.pc            6275122618 libsepol.pc                   6273506988 videoproto.pc
6271750934 gthread-2.0.pc            6272787836 libsidplay2.pc                6272776240 vo-amrwbenc.pc
6271761307 hogweed.pc                6273947401 libsidutils.pc                6272293434 vorbisenc.pc
6271750336 ice.pc                    6272370611 libtasn1.pc                   6272293435 vorbisfile.pc
6272249355 icu-i18n.pc               6271846535 libtiff-4.pc                  6272284595 vorbis.pc
6272249356 icu-io.pc                 6271762573 libtirpc.pc                   6274316252 xapian-core.pc
6272249354 icu-uc.pc                 6271847614 libturbojpeg.pc               6271750371 xdmcp.pc
6271638018 inputproto.pc             6272297895 libudev.pc                    6271750337 xextproto.pc
6271604269 kbproto.pc                6272297896 libusb-1.0.pc                 6271638017 xf86bigfontproto.pc
6271856523 lcms2.pc                  6272297900 libusb.pc                     6274577343 xf86driproto.pc
6272776236 lept.pc                   6274258064 libxml-2.0.pc                 6273924777 xf86vidmodeproto.pc
6273325458 libart-2.0.pc             6273796109 lua.pc                        6273325451 xineramaproto.pc
6271805092 libbsd-ctor.pc            6271599240 menu.pc                       6271608756 xproto.pc
6271805091 libbsd-overlay.pc         6271599245 menuw.pc                      6271846550 zlib.pc
6271805090 libbsd.pc                 6271846551 minizip.pc



:-)
Comment 23 Toralf Förster gentoo-dev 2017-09-04 21:53:01 UTC
Just FWIW this is a 2.3 TB file system with XFS
Comment 24 Mike Gilbert gentoo-dev 2017-09-05 01:23:55 UTC
I was able to reproduce this with dev-util/pkgconfig-0.28-r2 by using a dummy FUSE filesystem to generate a large inode number.

https://stackoverflow.com/questions/8120577/how-to-create-64-bit-inode

I then retested with dev-util/pkgconfig-0.29.2, and it worked fine. In fact, I didn't see any getdents() calls, which probably means the code has been refactored a bit and avoids the error.