(Running ~x86 for glibc, gcc, portage, gnome.) Ruby-1.8.4 has a clash of definition for eaccess() in glibc-2.4, which has changed definition in unistd.h. Fixed upstream in cvs. This leads to serious issues developing C++ <-> ruby programs (with SWIG). Uploading patch and ebuild, next. Note that the patch should be good for older versions of glibc, as it adds eaccess to the AC_CHECK_FUNCS in configure.in, and does all other appropriate magic. More details here: http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-core/7195 and here: http://www.atdot.net/~ko1/w3ml/w3ml.cgi/ruby-cvs/msg/16358 Patch is an amalgam of the cvs changes from the second link. Portage 2.1_pre6-r4 (default-linux/x86/2006.0, gcc-4.1.0, glibc-2.4-r1, 2.6.15-gentoo-r7 i686) ================================================================= System uname: 2.6.15-gentoo-r7 i686 Intel(R) Pentium(R) M processor 2.00GHz Gentoo Base System version 1.6.14 ccache version 2.3 [enabled] dev-lang/python: 2.3.5, 2.4.2 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.15.92.0.2-r10, 2.16-r1, 2.16.1-r2 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-pipe -Os -g -ggdb -march=pentium-m -mfpmath=sse" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/splash /etc/terminfo /etc/env.d" CXXFLAGS="-pipe -Os -g -ggdb -march=pentium-m -mfpmath=sse" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig buildpkg ccache distlocks metadata-transfer sandbox sfperms splitdebug strict userpriv usersandbox" GENTOO_MIRRORS="http://gentoo.osuosl.org/ http://adelie.polymtl.ca/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://www.gtlib.gatech.edu/pub/gentoo http://mirror.usu.edu/mirrors/gentoo/" LC_ALL="en_US.UTF-8" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/gcc410-fixes /usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X acl alsa apache2 apm avi berkdb bitmap-fonts cli crypt ctype cups dba dri eds emacs emboss encode expat fastbuild fbcon flac foomaticdb force-cgi-redirect fortran ftp gd gdbm gif gnome gpm gstreamer gtk gtk2 imlib ipv6 jpeg libg++ libwww mad memlimit mikmod mmx mp3 mpeg ncurses nptl ogg opengl oss pam pcre pdflib perl pic png posix python qt quicktime readline sdl session simplexml soap sockets spell spl sse ssl threads tiff tokenizer truetype truetype-fonts type1-fonts udev unicode vorbis xinerama xml xml2 xmms xprint xsl xv zlib elibc_glibc input_devices_evdev input_devices_joystick input_devices_keyboard input_devices_mouse input_devices_synaptics kernel_linux userland_GNU video_cards_i810 video_cards_fbdev video_cards_v4l video_cards_vesa video_cards_vga" Unset: ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, LANG, LDFLAGS, LINGUAS
Created attachment 82636 [details] ruby-1.8.4-r1.ebuild - patch - eautoreconf
Created attachment 82637 [details, diff] ruby-1.8.4-glibc24-eaccess.diff patch for glibc-2.4 / eaccess() issues
So this should be fixed with ruby-1.8.4.20060226 ?
The fix got into cvs on the 25th, so a cvs pull from thej 26 would likely be good, yes. The patch just to fix eaccess() problem is pretty innocuous. Not sure what a cvs pull is otherwise going to drag in.
I went ahead and bumped to -r2. Thanks for the patch.