I'm trying to use the nptl USE-variable. So I upgraded my system to kernel 2.6.2 (including the patches of gentoo-dev-sources, which aren't already in the kernel 2.6.2). I installed linux-headers 2.6.0, emerged glibc and did "emerge -e world". But at the stage of compiling sash, this failed. Note, that I have ~x86 in my keywords. I set it to major, because sash makes "emerge system" fail. Reproducible: Always Steps to Reproduce: 1. Install kernel 2.6.2 2. Install linux-headers 2.6.0 3. emerge glibc 4. emerge -e world 5. Repeat error with "emerge sash" Actual Results: # emerge sash Calculating dependencies ...done! >>> emerge (1 of 1) app-shells/sash-3.6 to / >>> md5 src_uri ;-) sash-3.6.tar.gz >>> Unpacking source... >>> Unpacking sash-3.6.tar.gz to /var/tmp/portage/sash-3.6/work RUNNING FROM extra_functions.sh * Applying sash-3.6-fix-includes.patch... [ ok ] RUNNING FROM extra_functions.sh * Applying sash-3.6-readline.patch... [ ok ] >>> Source unpacked. gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o sash.o sash.c sash.c: In function `fileman_completion': sash.c:536: Warnung: implicit declaration of function `completion_matches' sash.c:536: Warnung: assignment makes pointer from integer without a cast sash.c: In function `command_generator': sash.c:561: Warnung: suggest parentheses around assignment used as truth value sash.c: At top level: sash.c:1450: Warnung: `showPrompt' defined but not used gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmds.o cmds.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_dd.o cmd_dd.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_ed.o cmd_ed.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_grep.o cmd_grep.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_ls.o cmd_ls.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_tar.o cmd_tar.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_gzip.o cmd_gzip.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_find.o cmd_find.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_file.o cmd_file.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_chattr.o cmd_chattr.c In file included from /usr/include/linux/ext2_fs_sb.h:20, from /usr/include/linux/ext2_fs.h:20, from cmd_chattr.c:15: /usr/include/linux/percpu_counter.h: In function `percpu_counter_mod': /usr/include/linux/percpu_counter.h:75: error: invalid type argument of `->' /usr/include/linux/percpu_counter.h:77: error: invalid type argument of `->' /usr/include/linux/percpu_counter.h:77: error: `TIF_NEED_RESCHED' undeclared (first use in this function) /usr/include/linux/percpu_counter.h:77: error: (Each undeclared identifier is reported only once /usr/include/linux/percpu_counter.h:77: error: for each function it appears in.) make: *** [cmd_chattr.o] Fehler 1 !!! ERROR: app-shells/sash-3.6 failed. !!! Function src_compile, Line 38, Exitcode 2 !!! (no error message) # emerge info Portage 2.0.50_pre22 (default-x86-1.4, gcc-3.3.2, glibc-2.3.3_pre20040117-r0, 2.6.2-gentoo) ================================================================= System uname: 2.6.2-gentoo i686 Pentium III (Coppermine) Gentoo Base System version 1.4.3.12 Autoconf: sys-devel/autoconf-2.59 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -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.1/share/config /usr/kde/3/share/config /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/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://ftp.uni-erlangen.de/pub/mirrors/gentoo http://ftp.tu-clausthal.de/pub/linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror http://mirrors.sec.informatik.tu-darmstadt.de/gentoo http://www.fhh.opensource-mirror.de/gentoo.org http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo/ http://gentoo.oregonstate.edu/ http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/overlay" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="X acpi apm arts avi berkdb cdr crypt cups dga directfb doc encode esd fbcon foomaticdb gdbm ggi gif gnome gphoto2 gpm gtk guile icc imap imlib java jpeg kde ldap libg++ libgda libwww mad maildir mikmod motif mozilla mpeg mysql ncurses nls nptl oggvorbis opengl oss pam pdflib perl png postgres python qt quicktime readline ruby samba scanner sdl slang spell sse ssl svga tcltk tcpd tetex truetype usb video_cards_matrox vim-3dnow x86 xml2 xmms xv zlib"
*** This bug has been marked as a duplicate of 35784 ***
Sorry, but I'm not content with closing this bug. I saw bug #35784 before, but it has status "RESOLVED-FIXED" and plasmaroo states that it is fixed in linux-headers 2.6.0 . But this is not the case, there is at least one other user, who still has the same problem, look at http://forums.gentoo.org/viewtopic.php?t=132946 I reopen this bug, so there is at least one PR open for this problem. I didn't reopen bug #35784 because I don't know if this one has the same reasons like mine. If someone with more knowledge says, it's the same reason like #35784, then we can instead reopen this one, of course.
try re-emerging linux-headers-2.6.0 i just tried it over here and it works fine
Works here. Try without ccache?
I've gotten the same problem, here's my emerge -U sash output: xyu madd # emerge -U sash >>> --upgradeonly implies --update... adding --update to options. Calculating dependencies ...done! >>> emerge (1 of 1) app-shells/sash-3.6 to / >>> md5 src_uri ;-) sash-3.6.tar.gz >>> Unpacking source... >>> Unpacking sash-3.6.tar.gz to /var/tmp/portage/sash-3.6/work RUNNING FROM extra_functions.sh * Applying sash-3.6-fix-includes.patch... [ ok ] RUNNING FROM extra_functions.sh * Applying sash-3.6-readline.patch... [ ok ] >>> Source unpacked. gcc -O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe -fomit-frame-pointer -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o sash.o sash.c sash.c: In function `fileman_completion': sash.c:536: warning: implicit declaration of function `completion_matches' sash.c:536: warning: assignment makes pointer from integer without a cast sash.c: In function `command_generator': sash.c:561: warning: suggest parentheses around assignment used as truth value sash.c: At top level: sash.c:1450: warning: `showPrompt' defined but not used gcc -O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe -fomit-frame-pointer -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmds.o cmds.c In file included from /usr/include/linux/fs.h:16, from cmds.c:21: /usr/include/linux/list.h:594:2: warning: #warning "don't include kernel headers in userspace" In file included from /usr/include/linux/fs.h:20, from cmds.c:21: /usr/include/linux/radix-tree.h: In function `radix_tree_preload_end': /usr/include/linux/radix-tree.h:54: error: invalid type argument of `->' /usr/include/linux/radix-tree.h:54: error: `TIF_NEED_RESCHED' undeclared (first use in this function) /usr/include/linux/radix-tree.h:54: error: (Each undeclared identifier is reported only once /usr/include/linux/radix-tree.h:54: error: for each function it appears in.) make: *** [cmds.o] Error 1 !!! ERROR: app-shells/sash-3.6 failed. !!! Function src_compile, Line 38, Exitcode 2 !!! (no error message) I'm running Linux xyu 2.6.2-rc1-gentoo #1 Thu Feb 5 20:24:01 CST 2004 i686 Intel(R) Celeron(R) CPU 2.20GHz GenuineIntel GNU/Linux . The sources are gentoo-dev-sources. emerge info throws: Portage 2.0.50_pre22 (default-x86-1.4, gcc-3.3.2, glibc-2.3.3_pre20040117-r0, 2.6.2-rc1-gentoo) ================================================================= System uname: 2.6.2-rc1-gentoo i686 Intel(R) Celeron(R) CPU 2.20GHz Gentoo Base System version 1.4.3.12 Autoconf: sys-devel/autoconf-2.59 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe -fomit-frame-pointer" 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/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache fixpackages sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apm arts avi berkdb cdr crypt cups dvb dvd encode esd foomaticdb gdbm gif gphoto2 gpm gtk2 imlib java jikes jpeg kde libg++ libwww mad maildir mikmod mmx motif moznocalendar moznoirc mpeg ncurses nls oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl slang spell sse ssl svga tcpd truetype video_cards_i810 x86 xml2 xmms xv zlib"
right, and if your linux-headers-2.6.0 were properly patched then linux/fs.h would have this: #ifdef __KERNEL__ #include <linux/radix-tree.h> #endif plasmaroo: side note ... that isnt ansi compliant ... all pre-processor directives need to have the # as the first char on the line ... perhaps this instead: #ifdef __KERNEL__ # include <linux/radix-tree.h> #endif
OK, it seems like both of you are using out-of-date kernel headers. Emerge sync, and make sure you've got at least version 1.5 of linux-headers-2.6.0.ebuild.
O.k., in the meantime emerge -e system completed (except sash of course). I re-emerged linux-headers 2.6.0 again, but no change, sadly. Disabling ccache doesn't change anything: # FEATURES="-ccache" emerge sash Calculating dependencies ...done! >>> emerge (1 of 1) app-shells/sash-3.6 to / >>> md5 src_uri ;-) sash-3.6.tar.gz >>> Unpacking source... >>> Unpacking sash-3.6.tar.gz to /var/tmp/portage/sash-3.6/work RUNNING FROM extra_functions.sh * Applying sash-3.6-fix-includes.patch... [ ok ] RUNNING FROM extra_functions.sh * Applying sash-3.6-readline.patch... [ ok ] >>> Source unpacked. gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o sash.o sash.c sash.c: In function `fileman_completion': sash.c:536: Warnung: implicit declaration of function `completion_matches' sash.c:536: Warnung: assignment makes pointer from integer without a cast sash.c: In function `command_generator': sash.c:561: Warnung: suggest parentheses around assignment used as truth value sash.c: At top level: sash.c:1450: Warnung: `showPrompt' defined but not used gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmds.o cmds.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_dd.o cmd_dd.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_ed.o cmd_ed.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_grep.o cmd_grep.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_ls.o cmd_ls.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_tar.o cmd_tar.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_gzip.o cmd_gzip.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_find.o cmd_find.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_file.o cmd_file.c gcc -march=pentium3 -O3 -pipe -Wall -Wmissing-prototypes -DHAVE_GZIP=1 -DHAVE_LINUX_ATTR=1 -DHAVE_LINUX_MOUNT=1 -DHAVE_BSD_MOUNT=0 -DMOUNT_TYPE='"ext3"' -DHAVE_READLINE -c -o cmd_chattr.o cmd_chattr.c In file included from /usr/include/linux/ext2_fs_sb.h:20, from /usr/include/linux/ext2_fs.h:20, from cmd_chattr.c:15: /usr/include/linux/percpu_counter.h: In function `percpu_counter_mod': /usr/include/linux/percpu_counter.h:75: error: invalid type argument of `->' /usr/include/linux/percpu_counter.h:77: error: invalid type argument of `->' /usr/include/linux/percpu_counter.h:77: error: `TIF_NEED_RESCHED' undeclared (first use in this function) /usr/include/linux/percpu_counter.h:77: error: (Each undeclared identifier is reported only once /usr/include/linux/percpu_counter.h:77: error: for each function it appears in.) make: *** [cmd_chattr.o] Fehler 1 !!! ERROR: app-shells/sash-3.6 failed. !!! Function src_compile, Line 38, Exitcode 2 !!! (no error message) What else to try?
Sorry, I forgot to mention: I did an emerge sync before re-emerging and the ebuild says: #$Header: /home/cvsroot/gentoo-x86/sys-kernel/linux-headers/linux-headers-2.6.0.ebuild, v 1.5 2004/01/22 18:35:44 spock Exp $ So it doesn't seem to be a problem of failed emerge sync.
Hmm - can you please do ``grep "CONFIG_SMP" /usr/include/linux/autoconf.h''.
$ grep "CONFIG_SMP" /usr/include/linux/autoconf.h #undef CONFIG_SMP $ BTW, this is an uni-processor system, with an old PIII.
Hmm - that's *really* strange because UP systems and SMPs should have the flag set properly. Can you please change the following code in the ebuild, remerge and see if this solves it: - # Do normal src_compile stuff - kernel_src_compile + MY_ARCH=${ARCH} + unset ${ARCH} + make defconfig + ARCH=${MY_ARCH}
Bingo! # grep -A7 \ src_compile /usr/portage/sys-kernel/linux-headers/linux-headers-2.6.0.ebuild src_compile() { # Do normal src_compile stuff # kernel_src_compile MY_ARCH=${ARCH} unset ${ARCH} make defconfig ARCH=${MY_ARCH} # If this is sparc, then generate asm_offsets.h # emerge linux-headers [snip] >>> app-shells/sash-3.6 merged. [snip] # So, that is with ccache included. Now the header changed to: $ grep "CONFIG_SMP" /usr/include/linux/autoconf.h #define CONFIG_SMP 1 $ Plasmaroo, you noticed, that I didn't use plain gentoo-dev-sources, but took the vanilla-2.6.2-kernel and applied the patches of gentoo-dev-sources, which aren't already inside 2.6.2? Maybe something in the kernel sources changed between 2.6.1 and 2.6.2?
Now in CVS; should hit Portage within an hour. Not sure what caused this, but it seems that the standard method of using "make oldconfig" had problems. Thanks for testing this out and squashing this! Regarding the kernel, which one you use shouldn't matter because sash uses the /usr/include/linux headers; i.e. linux-headers; not the headers in /usr/src/... which are installed by your kernel.