I'm running a fairly recent 2.6.18 (rc5) kernel. While all config vars are correct (and the currently running kernel matches the one in /usr/src/linux), rlocate does not compile: # emerge rlocate Calculating dependencies... done! >>> Emerging (1 of 1) sys-apps/rlocate-0.5.1 to / * rlocate-0.5.1.tar.gz size ;-) ... [ ok ] * rlocate-0.5.1.tar.gz RMD160 ;-) ... [ ok ] * rlocate-0.5.1.tar.gz SHA256 ;-) ... [ ok ] * rlocate-0.5.1.tar.gz MD5 ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking rlocate-0.5.1.tar.gz ;-) ... [ ok ] * Determining the location of the kernel source code * Found kernel source directory: * /usr/src/linux * Found sources for kernel version: * 2.6.18-rc5 * Checking for suitable kernel configuration options... [ ok ] >>> Unpacking source... >>> Unpacking rlocate-0.5.1.tar.gz to /var/tmp/portage/rlocate-0.5.1/work * Applying rlocate-0.5.1-build.patch ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/rlocate-0.5.1/work/rlocate-0.5.1 ... ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-kernel=/usr/src/linux --with-rlocate-group=locate --build=i686-pc-linux-gnu checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether i686-pc-linux-gnu-gcc accepts -g... yes checking for i686-pc-linux-gnu-gcc option to accept ANSI C... none needed checking for style of include used by make... GNU checking dependency style of i686-pc-linux-gnu-gcc... gcc3 checking whether i686-pc-linux-gnu-gcc and cc understand -c and -o together... yes checking for mknod... /bin/mknod checking for depmod... /sbin/depmod checking for '/etc/cron.daily/' directory... yes checking whether to enable updates in rlocate module... no checking for directory with kernel source... /usr/src/linux checking for kernel version... 0.0.0 configure: error: *** rlocate needs kernel 2.6 to work This message is clearly bogus. Digging through the config.log and looking at the failed program, we see that UTS_RELEASE is needed - somthing that used to be defined in /usr/src/linux/include//linux/version.h This is *not* the case with my 2.6.18-rc5 kernel. Putting it there (just for testing) results in all sorts of different error messages. I'd recommend adding a check for kernel versions to the ebuild and bail out if it's >=2.6.18 for now. Or at least until a compatible version of rlocate is released. emerge --info: Portage 2.1.1 (default-linux/x86/2006.0, gcc-4.1.1/vanilla, glibc-2.4-r3, 2.6.18-rc5 i686) ================================================================= System uname: 2.6.18-rc5 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System version 1.12.4 Last Sync: Thu, 14 Sep 2006 00:50:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] app-admin/eselect-compiler: 2.0.0_rc1-r5 dev-lang/python: 2.4.3-r3 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: [Not Present] dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.60 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks metadata-transfer parallel-fetch sandbox sfperms strict userpriv usersandbox" GENTOO_MIRRORS="http://ftp.freenet.de/pub/ftp.snt.utwente.nl/pub/os/linux/gentoo http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/" LC_ALL="en_US.utf8" LINGUAS="" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="x86 X a52 acpi aim alsa apache2 apm audiofile bash-completion berkdb bitmap-fonts browserplugin bzip2 bzlib cli crypt cups curlwrappers divx4linux dlloader dri dv dvd dvdread dxr3 elibc_glibc emboss encode esd ethereal exif exiscan exiscan-acl fame fftw font-server foomaticdb fortran ftp gdbm gif gimpprint gnutls gpm gstreamer gtk gtk2 icq imap imlib input_devices_keyboard input_devices_mouse isdnlog jabber jpeg kdeenablefinal kernel_linux libg++ libwww mad maildir mailwrapper mikmod mmap mmx mng motif mp3 mpeg mpi ncurses network nls nptl nptlonly offensive ogg oss pam pcre perl png pppd python qt3 qt4 quicktime readline recode reflection sdl session sndfile spell spl sse ssl svg sysvipc tcpd theora truetype truetype-fonts type1-fonts udev unicode usb userland_GNU v4l v4l2 video_cards_apm video_cards_v4l video_cards_vesa video_cards_vga vorbis wmf wxwindows xml xmms xorg xpm xv xvid yv12 zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS (config.log attachment will follow)
Created attachment 96969 [details] config.log of failing compile attempt
*** This bug has been marked as a duplicate of 140848 ***
incorrect dupe
*** Bug 148643 has been marked as a duplicate of this bug. ***
should be fixed in cvs
Sorry it isn't....... * Applying rlocate-0.5.2-utsversion.patch ... [ ok ] >>> Source unpacked. >>> Compiling source in /var/tmp/portage/rlocate-0.5.2/work/rlocate-0.5.2 ... ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --with-kernel=/usr/src/linux --with-rlocate-group=locate --build=i686-pc-linux-gnu checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether i686-pc-linux-gnu-gcc accepts -g... yes checking for i686-pc-linux-gnu-gcc option to accept ISO C89... none needed checking for style of include used by make... GNU checking dependency style of i686-pc-linux-gnu-gcc... gcc3 checking whether i686-pc-linux-gnu-gcc and cc understand -c and -o together... yes checking for mknod... /bin/mknod checking for depmod... /sbin/depmod checking for '/etc/cron.daily/' directory... yes checking whether to enable updates in rlocate module... no checking for directory with kernel source... /usr/src/linux checking for kernel version... 0.0.0 configure: error: *** rlocate needs kernel 2.6 to work
Yep, the patch has an issue cause the file in kernel to include isn't # include "$kerneldir/include/linux/utsversion.h" (at least in gentoo-sources-2.6.18 isn't this) but # include "$kerneldir/include/linux/utsrelease.h" ( rlocate-0.5.2-utsversion.patch ) changing it in this way it worked fine......
i dont have 2.6.18 myself so i was going my lkml as what the name was fixed in cvs