Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 125887 - net-misc/wget-1.10.2 fails with confcache
Summary: net-misc/wget-1.10.2 fails with confcache
Status: RESOLVED DUPLICATE of bug 134454
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Ebuild Support (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Diego Elio Pettenò (RETIRED)
URL:
Whiteboard:
Keywords:
: 106087 124536 125431 (view as bug list)
Depends on: 134459
Blocks:
  Show dependency tree
 
Reported: 2006-03-11 19:15 UTC by Jose daLuz
Modified: 2006-05-26 16:01 UTC (History)
8 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jose daLuz 2006-03-11 19:15:58 UTC
After updating glibc to 2.4 and gcc to 4.1, while doing emerge -e system, wget fails with this error:

x86_64-pc-linux-gnu-gcc -march=athlon64 -O2 -pipe  -o wget  cmpt.o connect.o convert.o cookies.o ftp.o ftp-basic.o ftp-ls.o ftp-opie.o  hash.o host.o html-parse.o html-url.o http.o http-ntlm.o init.o log.o main.o gen-md5.o netrc.o progress.o ptimer.o recur.o res.o retr.o safe-ctype.o snprintf.o openssl.o url.o utils.o version.o xmalloc.o  -lssl -lcrypto -Wl,-rpath -Wl,/usr/lib64 -ldl
ptimer.o: In function `ptimer_reset':ptimer.c:(.text+0x2e): undefined reference to `clock_gettime'
ptimer.o: In function `ptimer_new':ptimer.c:(.text+0xbe): undefined reference to `clock_getres'
ptimer.o: In function `ptimer_measure':ptimer.c:(.text+0x1d2): undefined reference to `clock_gettime'
collect2: ld returned 1 exit status

emerge --info
Portage 2.1_pre6 (default-linux/amd64/2006.0, gcc-3.4.5, glibc-2.4-r0, 2.6.15-ck5 x86_64)
=================================================================
System uname: 2.6.15-ck5 x86_64 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.12.0_pre16
ccache version 2.4 [enabled]
dev-lang/python:     2.3.5-r2, 2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r1, 2.16.91.0.3, 2.16.91.0.5, 2.16.91.0.6
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/lib64/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=athlon64 -O2 -pipe -ffriend-injection"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS=""
FEATURES="autoconfig ccache confcache distlocks metadata-transfer nostrip sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.osuosl.org/"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/bmg-main /usr/local/portage"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="amd64 X aac alsa avi bash-completion berkdb bitmap-fonts bzip2 cairo cdr crypt cups dbus debug dri dvd dvdr eds emboss encode esd firefox flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 hal imlib ipv6 java jpeg kde ldap lzw lzw-tiff mad mono mozilla mp3 mpeg ncurses nls nptl nptlonly ogg opengl pam pdflib perl pic png python qt quicktime readline ruby samba sdl spell sqlite ssl tcpd theora tiff truetype truetype-fonts type1-fonts usb vorbis xml2 xpm xv zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_evdev kernel_linux userland_GNU video_cards_vga video_cards_vesa video_cards_nv"
Unset:  ASFLAGS, CTARGET, LDFLAGS, LINGUAS, MAKEOPTS
Comment 1 Ryan Hill (RETIRED) gentoo-dev 2006-03-11 20:41:52 UTC
same error here.  syncing and remerging glibc made it go bye bye.
Comment 2 Ryan Hill (RETIRED) gentoo-dev 2006-03-11 21:32:50 UTC
my bad.  this is a confcache bug.
Comment 3 Ryan Hill (RETIRED) gentoo-dev 2006-03-11 22:11:53 UTC
to reproduce:

# rm /var/tmp/confcache/* && emerge =coreutils-5.94-r1 =wget-1.10.2
Comment 4 Alex 2006-03-21 15:54:47 UTC
Works fine with the pre6-r5 for me.
Comment 5 Kenyon Ralph 2006-03-22 19:15:44 UTC
(In reply to comment #4)
> Works fine with the pre6-r5 for me.

What are you talking about?  Did you comment on the wrong bug?
Comment 6 Ryan Hill (RETIRED) gentoo-dev 2006-03-24 18:41:05 UTC
adding RESTRICT="confcache" to the coreutils ebuild should be enough to fix this.
Comment 7 Jonathan Coome (RETIRED) gentoo-dev 2006-03-27 10:31:23 UTC
(In reply to comment #6)
> adding RESTRICT="confcache" to the coreutils ebuild should be enough to fix
> this.

Re-emerging coreutils with FEATURES="-confcache" didn't make any difference for me, but emerging wget without confcache _did_ work.
Comment 8 Ryan Hill (RETIRED) gentoo-dev 2006-03-29 19:25:53 UTC
i think that might have been because the config.cache value that causes the breakage was still in your confcache.  using 'FEATURES="-confcache" emerge coreutils' won't clear the cache or update it, so wget will still fail.  you're right that 'FEATURES="-confcache" emerge wget' would work too because the cache wouldn't be used, but then the bum entry from coreutils is still in the cache and could cause problems for other packages down the road.
Comment 9 Jonathan Coome (RETIRED) gentoo-dev 2006-03-30 01:21:42 UTC
(In reply to comment #8)
> i think that might have been because the config.cache value that causes the
> breakage was still in your confcache.  using 'FEATURES="-confcache" emerge
> coreutils' won't clear the cache or update it, so wget will still fail.  

Ah, ok. So what is this bad config.cache value, and why is coreutils creating it?
Comment 10 Ryan Hill (RETIRED) gentoo-dev 2006-05-22 20:34:10 UTC
General goofyness i guess.

coreutils' configure is setting:
ac_cv_func_clock_gettime=${ac_cv_func_clock_gettime=yes}

wget's configure w/o using the cache comes up with:
ac_cv_func_clock_gettime=${ac_cv_func_clock_gettime=no}
ac_cv_lib_rt_clock_gettime=${ac_cv_lib_rt_clock_gettime=yes}

so wget using the coreutils cache thinks it can use clock_gettime without using an external library.  in reality it can't, and needs to pass -lrt to have access to that function.

i have no clue why coreutils can use clock_gettime natively while wget has to get it from a library.  either way, putting a confcache restriction on the coreutils ebuild will fix this.
Comment 11 Jakub Moc (RETIRED) gentoo-dev 2006-05-23 13:42:17 UTC
*** Bug 124536 has been marked as a duplicate of this bug. ***
Comment 12 Jakub Moc (RETIRED) gentoo-dev 2006-05-23 13:43:30 UTC
*** Bug 106087 has been marked as a duplicate of this bug. ***
Comment 13 Jakub Moc (RETIRED) gentoo-dev 2006-05-23 13:44:37 UTC
*** Bug 125431 has been marked as a duplicate of this bug. ***
Comment 14 nm (RETIRED) gentoo-dev 2006-05-23 13:51:11 UTC
(In reply to comment #0)
Confirmed this happens for me with versions of gcc from 3.4.5 to 3.4.6 (stable x86) as I originally reported in awhile ago in bug 124536. Confcache is the culprit; see the above bug for my error message. Happens in all versions of Portage 2.1, including the latest.

flameeyes...how 'bout a little love for this bug? :D
Comment 15 nm (RETIRED) gentoo-dev 2006-05-23 15:13:34 UTC
(In reply to comment #14)
As per ferringb's suggestion on another bug, deleting /var/tmp/confcache*, enabling FEATURES="confcache" in make.conf, and adding RESTRICT="confcache" to the wget ebuild, and emerging wget twice allows wget to be successfully built.

I also first emerged coreutils with confcache enabled just to see if that would poison the subsequent wget compile (emerge coreutils wget), but wget built successfully each time.

So that's sort of a good sign, though something still needs to be fixed elsewhere before RESTRICT="confcache" can be taken out of the wget ebuild.
Comment 16 Ryan Hill (RETIRED) gentoo-dev 2006-05-23 16:23:53 UTC
like i said before, the reason that works is because it just causes wget to not use the poisoned cache.  however the problem is still there, just papered over.  the proper solution is to add the restrict to the ebuild that does the poisoning, ie. coreutils.  i've spoken to Brian and he confirmed it.  with confcache bugs you have to find and fix the ebuild that introduces the invalid cache entry, _not_ the ebuild that dies because of it.

FWIW, this also kills net-misc/ntp for the same reason and probably more that i just haven't run into yet.
Comment 17 Diego Elio Pettenò (RETIRED) gentoo-dev 2006-05-26 14:44:46 UTC

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