Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 147567 - sys-apps/rlocate does not work with 2.6.18+ due to utsversion.h
Summary: sys-apps/rlocate does not work with 2.6.18+ due to utsversion.h
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: SpanKY
URL:
Whiteboard:
Keywords:
: 148643 (view as bug list)
Depends on:
Blocks: 148429
  Show dependency tree
 
Reported: 2006-09-14 07:05 UTC by Tobias Klausmann (RETIRED)
Modified: 2006-09-24 08:37 UTC (History)
3 users (show)

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


Attachments
config.log of failing compile attempt (config.log,12.76 KB, text/plain)
2006-09-14 07:07 UTC, Tobias Klausmann (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Klausmann (RETIRED) gentoo-dev 2006-09-14 07:05:59 UTC
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)
Comment 1 Tobias Klausmann (RETIRED) gentoo-dev 2006-09-14 07:07:04 UTC
Created attachment 96969 [details]
config.log of failing compile attempt
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2006-09-14 08:13:53 UTC

*** This bug has been marked as a duplicate of 140848 ***
Comment 3 SpanKY gentoo-dev 2006-09-17 12:30:59 UTC
incorrect dupe
Comment 4 Jakub Moc (RETIRED) gentoo-dev 2006-09-22 06:40:02 UTC
*** Bug 148643 has been marked as a duplicate of this bug. ***
Comment 5 SpanKY gentoo-dev 2006-09-23 04:03:07 UTC
should be fixed in cvs
Comment 6 Matteo Azzali (RETIRED) gentoo-dev 2006-09-23 09:31:12 UTC
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
Comment 7 Matteo Azzali (RETIRED) gentoo-dev 2006-09-23 11:56:18 UTC
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......
Comment 8 SpanKY gentoo-dev 2006-09-23 20:49:47 UTC
i dont have 2.6.18 myself so i was going my lkml as what the name was

fixed in cvs