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

Bug 269978

Summary: sys-apps/usbutils-0.82: emerge fails; configure script can't find libusb via pkg-config
Product: Gentoo Linux Reporter: Andrew Evans <gentoo>
Component: New packagesAssignee: Gentoo's Team for Core System packages <base-system>
Status: RESOLVED FIXED    
Severity: major CC: andre, cnyegle, marduk, nelchael
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build log
See text
virtual/libusb dependencies

Description Andrew Evans 2009-05-15 18:31:14 UTC
usbutils merged ok when it was built against dev-libs/libusb-0.1.12-r5. It now fails with dev-libs/libusb-1.0.1 installed.

Reproducible: Always

Steps to Reproduce:
1. emerge --oneshot =dev-libs/libusb-1.0.1
2. emerge --depclean # will remove older dev-libs/libusb versions
3. emerge --oneshot =sys-apps/usbutils-0.82

Actual Results:  
Build dies in configure stage.

Expected Results:  
Successful merge.

Portage 2.1.6.13 (default/linux/x86/2008.0/desktop, gcc-4.3.3, glibc-2.9_p20081201-r2, 2.6.29-gentoo-r2 i686)
=================================================================
System uname: Linux-2.6.29-gentoo-r2-i686-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4600+-with-gentoo-2.0.0
Timestamp of tree: Fri, 15 May 2009 01:15:02 +0000
distcc 3.1 i686-pc-linux-gnu [disabled]
app-shells/bash:     4.0_p17-r1
dev-java/java-config: 2.1.7
dev-lang/python:     2.6.2
dev-util/cmake:      2.6.4
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.4.3-r2
sys-apps/sandbox:    1.9
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.19.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.29
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=k8 -Os -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=k8 -Os -pipe"
DISTDIR="/var/lib/portage/gentoo/distfiles"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms splitdebug strict unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.llarian.net/ http://cudlug.cudenver.edu/gentoo/ http://gentoo.osuosl.org/"
LANG="en_US"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j3"
PKGDIR="/var/lib/portage/gentoo/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="/var/lib/portage/gentoo"
PORTDIR_OVERLAY="/var/lib/portage/overlay"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acpi alsa bash-completion berkdb bitmap-fonts bluetooth boundschecking branding browserplugin cairo caps cdr cli consolekit cracklib css cups dbus doc dri dvd dvdnav dvdr dvdread emacs emboss encode evo fam ffmpeg firefox flac foomaticdb gif gtk gtk2 hal htmlhandbook iconv imlib ipod isdnlog jpeg kde lame libnotify lm_sensors mad midi mikmod mmx mmxext mng mozilla moznopango mp3 mp4 mpeg mplayer mudflap musicbrainz mythtv ncurses nptl nptlonly nsplugin ogg ooo-kde opengl pam pcre pda pdf png ppds pppd qt3 qt3support qt4 quicktime readline reflection rtc sdl session smp sms spell spl sse sse2 ssl startup-notification svg sysfs tcpd threads tiff truetype usb v4l v4l2 vorbis win32codecs x264 x86 xcomposite xml xorg xulrunner xv xvid yahoo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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="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 dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filterheaders include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Andrew Evans 2009-05-15 18:34:33 UTC
Created attachment 191408 [details]
build log
Comment 2 André Terpstra 2009-05-15 19:50:13 UTC
same problem here, but appplies also to media-libs/libgphoto2-2.4.4
Comment 3 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2009-05-15 21:59:59 UTC
emerge --sync and then "emerge virtual/libusb:0 virtual/libusb:1"
There was a typo in the virtual/libusb-1 ebuild.
Comment 4 Andrew Evans 2009-05-15 22:50:43 UTC
Simply emerge --sync'ing and re-running revdep-rebuild (after rm'ing cache) fixed it. That did emerge --oneshot sys-apps/usbutils, which pulled in new =dev-libs/libusb-0.1.12-r5 and =virtual/libusb-0. So now I've got both libusb-0.1.12-r5 (again) and libusb-1.0.1.

Thanks for the quick fix!
Comment 5 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2009-05-15 23:09:43 UTC
revdep-rebuild is not required.

You should have libusb-compat and libusb-1, which together are mutually exclusive with libusb-0.

Portage should NOT have let you install dev-libs/libusb-0* and libusb-compat at the same time.
Comment 6 Andrew Evans 2009-05-15 23:31:29 UTC
I simply ran revdep-rebuild as that was how I discovered this in the first place. It was just a means to remerge usbutils.

I still don't have libusb-compat:

$ ls -ld /var/db/pkg/*/*usb*
drwxr-xr-x 2 root root 808 2009-05-15 15:44 /var/db/pkg/dev-libs/libusb-0.1.12-r5
drwxr-xr-x 2 root root 728 2009-05-14 22:56 /var/db/pkg/dev-libs/libusb-1.0.1
drwxr-xr-x 2 root root 752 2009-05-15 15:44 /var/db/pkg/sys-apps/usbutils-0.82
drwxr-xr-x 2 root root 616 2009-05-15 15:44 /var/db/pkg/virtual/libusb-0

Is that a problem?
Comment 7 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2009-05-16 00:48:21 UTC
Andrew Evans:
Can you please show me the output of:
1. emerge -pv virtual/libusb:0
2. emerge -epv virtual/libusb:0

As it stands with that output, the dependencies of virtual/libusb-0 are not fulfilled at all.
Comment 8 André Terpstra 2009-05-16 04:58:28 UTC
My situation is similar but not the same. I also discovered this bug by

emerge --sync
emerge --depclean
revdep-rebuild

A few hours later, after another emerge --sync virtual/libusb was pulled in, but this does not solve the problem. As mentioned before media-libs/libgphoto2 is also affected. the problem remains with me since I only have dev-libs/libusb-1.0.1 installed and not dev-libs/libusb-0.1.12-r5 like Andrew Evans. I have not yet opened a bug for libgphoto2 but will do so now. I'll also submit some more information shortly.
Comment 9 André Terpstra 2009-05-16 05:18:18 UTC
I do have the libusb-1 but not libusb-compat:

ZeusGentoo2 ~ # emerge -pv libusb

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] dev-libs/libusb-1.0.1  USE="doc -debug" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB
ZeusGentoo2 ~ # emerge -pv libusb-compat

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N    ] dev-libs/libusb-compat-0.1.0  USE="-debug" 244 kB

Total: 1 package (1 new), Size of downloads: 244 kB
ZeusGentoo2 ~ #

The output of the commands in comment #7 will be attached.
Comment 10 André Terpstra 2009-05-16 05:19:55 UTC
Created attachment 191443 [details]
See text
Comment 11 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2009-05-16 05:58:03 UTC
André Terpstra:
1. I'm not sure what that html attachment was.
2. Which slots of virtual/libusb do you have?

There's lots of packages that need to flip to the virtual/libusb dep still.
Comment 12 André Terpstra 2009-05-16 07:28:39 UTC
Created attachment 191449 [details]
virtual/libusb dependencies
Comment 13 André Terpstra 2009-05-16 07:31:20 UTC
(In reply to comment #11)
> André Terpstra:
> 1. I'm not sure what that html attachment was.
> 2. Which slots of virtual/libusb do you have?
> 
> There's lots of packages that need to flip to the virtual/libusb dep still.
> 

I only have slot 1:

ZeusGentoo2 ~ # emerge -pv virtual/libusb

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] virtual/libusb-1  0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB
Comment 14 André Terpstra 2009-05-16 07:39:15 UTC
Perhaps I should add the specific error message in my case:

"...
checking for x86_64-pc-linux-gnu-pkg-config... no
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for LIBUSB... configure: error: Package requirements (libusb >= 0.1.12) were not met:

No package 'libusb' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables LIBUSB_CFLAGS
and LIBUSB_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.


!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/sys-apps/usbutils-0.82/work/usbutils-0.82/config.log
 *
 * ERROR: sys-apps/usbutils-0.82 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line  191:  Called econf '--datadir=/usr/share/misc' '--disable-zlib'
 *               ebuild.sh, line  534:  Called die
 * The specific snippet of code:
 *                      die "econf failed"
 *  The die message:
 *   econf failed
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/sys-apps:usbutils-0.82:20090516-073707.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-apps/usbutils-0.82/temp/environment'.
 *

>>> Failed to emerge sys-apps/usbutils-0.82, Log file:

>>>  '/var/log/portage/sys-apps:usbutils-0.82:20090516-073707.log'
"
Comment 15 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2009-05-16 08:22:43 UTC
André:
# emerge -1v libusb-compat && emerge -1v =virtual/libusb-0 =virtual/libusb-1
You picked up the upgrade for a moment when the SLOT in virtual/libusb-1 had a typo.
Comment 16 André Terpstra 2009-05-16 08:44:10 UTC
I already thought so. Since I already have slot 1 installed I did not re-emerge that one. I fail to understand why I have to manually emerge these packages, though. In my view everything should be controlled by the combination world file, profile and USE flags. Anyway, revdep-rebuild no longer complains no (no rebuilds necessary).
Comment 17 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2009-05-16 09:06:06 UTC
No, you must remerge the virtual/libusb-1 ebuild, that's where the typo was (specifically, it accidentally declared SLOT=0 instead of SLOT=1).

The other question however, is what on your system caused dev-libs/libusb-0* to be removed? An overzealous depclean maybe?
Comment 18 André Terpstra 2009-05-16 20:42:15 UTC
Yes, like Andrew I did an emerge --depclean (as I do regularly as part of a system cleanup) after an ordinary emerge --sync.
Comment 19 SpanKY gentoo-dev 2009-10-01 03:34:12 UTC
guess there doesnt need anything to be changed here