fails on the sysctl.h test although the headers are patched Reproducible: Always Steps to Reproduce: 1.replace linux-headers-2.6.7-r1 with linux26-headers-2.6.7-r1 2. try to compile glibc 3. looks like it's looking at kernel sources instead of the headers Actual Results: emerge glibc Calculating dependencies ...done! >>> emerge (1 of 1) sys-libs/glibc-2.3.3.20040420 to / ~x86 >>> md5 src_uri ;-) glibc-2.3.2.tar.bz2 >>> md5 src_uri ;-) glibc-linuxthreads-2.3.2.tar.bz2 >>> md5 src_uri ;-) glibc-2.3.3-branch-update-20040420.patch.bz2 ~x86 * Checking kernel headers for broken sysctl.h ... yes * Your version of: * //usr/include/linux/sysctl.h * is broken (from a user space perspective). Please apply * the following patch: * ******************************************************* --- linux.orig/include/linux/sysctl.h.orig 2003-05-18 22:12:39.000000000 +0200 +++ linux.fixed/include/linux/sysctl.h 2003-05-18 22:13:58.000000000 +0200 @@ -35,6 +35,10 @@ the largest acceptable value for the nlen member of a struct __sysctl_args to have? */ +#ifndef __user +#define __user +#endif + struct __sysctl_args { int __user *name; int nlen; * ******************************************************* !!! ERROR: sys-libs/glibc-2.3.3.20040420 failed. !!! Function pkg_setup, Line 239, Exitcode 0 !!! Broken linux/sysctl.h header included in kernel sources! Expected Results: should have compiled cleanly emerge info Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.7-win4lin-r2) ================================================================= System uname: 2.6.7-win4lin-r2 i686 AMD Athlon(tm) XP 2700+ Gentoo Base System version 1.5.1 distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-mcpu=athlon-xp -O3 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-mcpu=athlon-xp -O3 -pipe" DISTDIR="/home/extrabig/portage/distfiles" FEATURES="autoaddcvs ccache sandbox userpriv usersandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j3" PKGDIR="/home/extrabig/portage/packages" PORTAGE_TMPDIR="/home/extrabig/tmp" PORTDIR="/home/extrabig/portage" PORTDIR_OVERLAY="/home/derk/portage" SYNC="rsync://192.168.4.11/gentoo-portage" USE="X aalib alsa apm arts avi berkdb bonobo cdr crypt cups dvd encode esd f77 foomaticdb gb gdbm gif gnome gphoto2 gpm gtk gtk2 gtkhtml guile imlib jack java jpeg kde libg++ libwww mad mikmod motif mozilla mpeg ncurses nls ofx oggvorbis opengl oss pam pdflib perl png ppds python qt quicktime readline scanner sdl slang spell ssl svga tcltk tcpd tetex truetype usb x86 xml xml2 xmms xv zlib"
need to emerge linux26-headers as a true root user not using sudo seems there is an install problem otherwise... or is it simply installing twice .. as below as : sudo emerge linux26-headers The following errors occur the rest was stripped using the redirect '>' to a text file, it appears normally just before the install section.. Makefile:434: .config: No such file or directory touch: cannot touch `//usr/include/linux/autoconf.h': Permission denied or seemingly just run the linux26-headers install twice and it works?!!! and glibc will compile ... happened on all 4 boxes 3 amd athlon-xp one pentium 3 after first time glibc error occurs .. after second all appears well
Created attachment 35120 [details] output of emerge linux26-headers first time note that the normal 2.6-kernel install stuff was not called here emerge linux26-headers >trap.txt Makefile:434: .config: No such file or directory touch: cannot touch `//usr/include/linux/autoconf.h': Permission denied In file included from /usr/include/bits/posix1_lim.h:130, from /usr/include/limits.h:144, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/include/limits.h:122, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/include/syslimits.h:7, from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.3/include/limits.h:11, from scripts/basic/fixdep.c:105: /usr/include/bits/local_lim.h:36:26: linux/limits.h: No such file or directory In file included from /usr/include/sys/socket.h:35, from /usr/include/netinet/in.h:24, from scripts/basic/fixdep.c:107: /usr/include/bits/socket.h:305:24: asm/socket.h: No such file or directory scripts/basic/fixdep.c: In function `use_config': scripts/basic/fixdep.c:193: error: `PATH_MAX' undeclared (first use in this function) scripts/basic/fixdep.c:193: error: (Each undeclared identifier is reported only once scripts/basic/fixdep.c:193: error: for each function it appears in.) scripts/basic/fixdep.c:193: warning: unused variable `s' scripts/basic/fixdep.c: In function `parse_dep_file': scripts/basic/fixdep.c:289: error: `PATH_MAX' undeclared (first use in this function) scripts/basic/fixdep.c:289: warning: unused variable `s' make[1]: *** [scripts/basic/fixdep] Error 1 make: *** [scripts_basic] Error 2
Created attachment 35121 [details] trap2.txt second run text capture emerge linux26-headers >trap2.txt Makefile:434: .config: No such file or directory touch: cannot touch `//usr/include/linux/autoconf.h': Permission denied note: that this time the kernel install stuff runs
note that this is a sequential set of events just uninstalling linux(26)-headers will cause glibc to fail on the first reinstall. After re-emerging linux26-headers a second time (with out uninstalling) glibc compiles cleanly again. This is because of the errors produced the first time arround. Seems the ebuild references the previous install for some information .. is this a good idea? Makes for very subtile erros..
Oh .. I don't know what you intended with linux-headers-2.6.99 but it will not install / ewarn or swap to the new ebuilds normally requires the uninstall of your existing linux-header-2.6.X and install with the above tricks of the linux26-headers. All the linux-headers-2.6.99 seems to do is cause portage to blow up if you have linux-headers-2.6.X installed .. it complains about virtual headers conflicts and won't run
alright, it seems that this previous bugfix breaks unless root. the reason why we try to create an empty autoconf.h if it isnt found is that it will not be generated otherwise, and a few things will break if it's not there. i think you can work around this for now by creating that file before emerging linux26-headers.
i just realised that make *config wont succeed anyways if you dont have headers installed. heh. i guess that makes it a bit hard to uninstall linux-headers and install linux26-headers. :|
alright, this should be fixed in cvs now. sorry about that, and thanks for reporting the bug :) if you still have problems after syncing, feel free to re-open this bug. the md5sums of the recently fixed header ebuilds are: ayanami linux26-headers # md5sum linux26-headers-2.6.6.ebuild linux26-headers-2.6.6-r1.ebuild linux26-headers-2.6.7-r1.ebuild e474e1ab5c458a8374bc7232ddf20613 linux26-headers-2.6.6.ebuild fa8f0c0843ada01b03cd2e4ff388574a linux26-headers-2.6.6-r1.ebuild 81ba8ecd58feb8f352d555898bfa66a3 linux26-headers-2.6.7-r1.ebuild