make[1]: Leaving directory `/var/tmp/portage/wine-20041019-r1/work/wine-20041019/dlls' !!! ERROR: app-emulation/wine-20041019-r1 failed. !!! Function src_compile, Line 77, Exitcode 2 !!! all !!! If you need support, post the topmost build error, NOT this status message. Reproducible: Always Steps to Reproduce: 1.emerge =app-emulation/wine-20041019-r1 Actual Results: The program started to compile but exited with the following error: make[1]: Leaving directory `/var/tmp/portage/wine-20041019-r1/work/wine-20041019/dlls' !!! ERROR: app-emulation/wine-20041019-r1 failed. !!! Function src_compile, Line 77, Exitcode 2 !!! all !!! If you need support, post the topmost build error, NOT this status message. Expected Results: Installed properly.
!!! If you need support, post the topmost build error, NOT this status message. ^^^^ please READ the messages that portage gives you. The information you've provided in this bug report is useless to try and debug the problem.
Hopefully this is the correct text, it was the only error message I could find: /var/tmp/portage/wine-20041019-r1/work/wine-20041019/loader/preloader.c:510: undefined reference to `strlen' preloader.o(.text+0x494):/var/tmp/portage/wine-20041019-r1/work/wine-20041019/loader/preloader.c:512: undefined reference to `strlen' collect2: ld returned 1 exit status make[1]: *** [wine-preloader] Error 1 make[1]: Leaving directory `/var/tmp/portage/wine-20041019-r1/work/wine-20041019/loader' make: *** [loader] Error 2 gcc -c -I. -I. -I../include -I../include -D__WINESRC__ -Wall -pipe -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith -march=athlon-xp -mcpu=i686 -pipe -O2 -o context_alpha.o context_alpha.c make: *** Waiting for unfinished jobs....
ken - thats good. Your "emerge info" output could be useful too.
Portage 2.0.51-r2 (default-x86-2004.0, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.8.1 i686) ================================================================= System uname: 2.6.8.1 i686 AMD Athlon(TM) XP 1800+ Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.14.90.0.8-r1 Headers: sys-kernel/linux-headers-2.4.21-r1 Libtools: sys-devel/libtool-1.5.2-r5 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -mcpu=i686 -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -mcpu=i686 -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache distlocks sandbox" GENTOO_MIRRORS="http://gentoo.mirrors.pair.com" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow 3dnowext X aalib aim alsa apache2 apm arts avi berkdb bitmap-fonts bonobo cdr crypt cups directfb divx4linux dv dvd dvdr emu10k1 encode esd f77 foomaticdb gd gdbm gif gnome gpm gtk gtk2 gtkhtml guile imlib java jpeg kde libg++ libwww mad mikmod mmx motif mozilla moznoxft mpeg msn mysql nas ncurses nls oggvorbis opengl oss pam pdflib perl php png python qt quicktime radeon readline sasl sdl skey slang spell sse ssl svga tcltk tcpd tiff truetype usb x86 xml2 xmms xprint xv xvid yahoo zlib video_cards_radeon"
Same setup. Same error. But have not investigated further
This is caused by the patch 20041019-load-wrappers.patch. The patch uses strlen, but since the relevant file isn't linked against the standard system libraries that is not available. The patch seems to append -bin to a path passed in and tries this alternate name before the default. I have no clue why this is needed. For now I just commented out the patch in the ebuild, if it doesn't work I'll see if I can modify it to not use strlen.
Don't waste your time compiling without the patch, the compile will work but the resulting setup will not. I will try later today if I can fix the patch, no time right now.
Created attachment 42917 [details, diff] load-wrappers patch that doesn't use strlen This one doesn't use strlen. It seems to get the job done: wine compiled and is running. It will give the wrong error message if you feed it a file with a very long path, but I think it will still fail properly. Someone who actually knows C might want to look this over to make sure though :)
*** Bug 69423 has been marked as a duplicate of this bug. ***
thanks Marien, i was stupid and it slipped my mind that strlen is a C library call updated the patch with your fix and added to cvs