Compile issue with test8 and gcc 2.95.2

From: ^chewie (chewie@wookimus.net)
Date: Sat Sep 09 2000 - 12:23:12 EST


Actually, I've been having a problem compiling the kernel ever since test7
(test6 compiled fine for me). The errors I see include both segfaults
(which I thought might be memory related, but alas no), and the
folling "parse" error:

----------------------------------------------------------------------
...snip from make bzImage...
----------------------------------------------------------------------
gcc -D__KERNEL__ -I/usr/src/linux/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=k6 -fno-strict-aliasing -DEXPORT_SYMTAB -c pm.c
In file included from /usr/src/linux/include/linux/fs.h:189,
                 from /usr/src/linux/include/linux/capability.h:17,
                 from /usr/src/linux/include/linux/binfmts.h:5,
                 from /usr/src/linux/include/linux/sched.h:9,
                 from /usr/src/linux/include/linux/mm.h:4,
                 from /usr/src/linux/include/linux/slab.h:15,
                 from pm.c:23:
/usr/src/linux/include/asm/semaphore.h:98: parse error before character 0177
make[2]: *** [pm.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.0-test8/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.0-test8/kernel'
make: *** [_dir_kernel] Error 2
----------------------------------------------------------------------

Another parse error happens when I try to continue on by re-exec'ing
'make bzImage'...
----------------------------------------------------------------------
...snip from make bzImage run 2...
----------------------------------------------------------------------
gcc -D__KERNEL__ -I/usr/src/linux-2.4.0-test8/include -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=k6 -fno-strict-aliasing -c -o user.o user.c
In file included from /usr/src/linux-2.4.0-test8/include/linux/fs.h:609,
                 from /usr/src/linux-2.4.0-test8/include/linux/capability.h:17,
                 from /usr/src/linux-2.4.0-test8/include/linux/binfmts.h:5,
                 from /usr/src/linux-2.4.0-test8/include/linux/sched.h:9,
                 from user.c:13:
/usr/src/linux-2.4.0-test8/include/linux/sysv_fs_sb.h:20: warning: no semicolon at end of struct or union
/usr/src/linux-2.4.0-test8/include/linux/sysv_fs_sb.h:20: parse error before character 0177
/usr/src/linux-2.4.0-test8/include/linux/sysv_fs_sb.h:68: parse error before `}'
In file included from /usr/src/linux-2.4.0-test8/include/linux/capability.h:17,
                 from /usr/src/linux-2.4.0-test8/include/linux/binfmts.h:5,
                 from /usr/src/linux-2.4.0-test8/include/linux/sched.h:9,
                 from user.c:13:
/usr/src/linux-2.4.0-test8/include/linux/fs.h:656: field `sysv_sb' has incomplete type
make[2]: *** [user.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.0-test8/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.0-test8/kernel'
make: *** [_dir_kernel] Error 2
----------------------------------------------------------------------

They don't seem related, but I could find no hidden characters in the
header files and could find no syntax errors at first and second
glance.

I downloaded linux-2.4.0-test8.tar.gz and ..tar.gz.sign earlier this
morning and verified the tarball with the signature (success).

I'm a bit baffled. I've rarely had problems compiling a kernel, but
this is one I can't get past. I'm using Debian's woody dist with gcc
2.95.2-14.

On a whim, before I sent this email off, I tried to compile the kernel w/o optimization (I deleted -O2 from Makefile). This is the error I ran in to:

----------------------------------------------------------------------
gcc -D__KERNEL__ -I/usr/src/linux-2.4.0-test8/include -g -Wall -Wstrict-prototypes -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=k6 -fno-strict-aliasing -fno-omit-frame-pointer -c -o sched.o sched.c
sched.c: In function `schedule':
sched.c:649: Invalid `asm' statement:
sched.c:649: fixed or forbidden register 6 (bp) was spilled for class GENERAL_REGS.
make[2]: *** [sched.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.4.0-test8/kernel'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.4.0-test8/kernel'
make: *** [_dir_kernel] Error 2
----------------------------------------------------------------------

Might this have something to do with it?

-- 
  Chad "^chewie, gunnarr" Walstrom <chewie@wookimus.net>
              http://wookimus.net/chewie


- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Sep 15 2000 - 21:00:12 EST