RE: 2.1.x compilation problems

Bernhard Rosenkraenzer (linux@bero-online.ml.org)
Fri, 30 May 1997 21:19:27 +0200 (MET DST)


On 30 May 1997, Deurzen-van P.A.J. SIC-CTAIC/4 wrote:

> Did you try switching off the SMP property in the main Makefile?
>

Sure - I commented out SMP = 1, and I even tried adding a line SMP = 0, no
changes whatsoever. (The main Makefile _is_ /usr/src/linux/Makefile, isn't
it?)

LLaP
bero

> >I've tried to compile some recent 2.1.x kernels (2.1.38 to 41) without
> >success - is there a problem with 2.1.x kernels and glibc (I'm running
> >glibc 2.0.3, binutils 2.8, make 3.75.1)?
> >
> >The error message I'm getting with make zImage is:
> >(The C-Flags -DCPU=686 -D__SMP__ seem to be interesting, as well - I've
> >configured everything for a normal Pentium without SMP.
> >The really interesting stuff is at the end.)
> >
> >gcc -D__KERNEL__ -I/usr/src/linux-2.1.41/include -Wall -Wstrict-prototypes
> >-O2 -fomit-frame-pointer -x c++ -D__SMP__ -pipe -fno-strength-reduce -m386
> >-DCPU=386 -m486 -DCPU=486 -m486 -malign-loops=2 -malign-jumps=2
> >-malign-functions=2 -DCPU=586 -m486 -mali
> >gn-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -D__SMP__ -c -o
> >init/main.o init/main.c
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >/usr/src/linux-2.1.41/include/asm/string.h: In function `void *
> >__constant_memcpy(void *, const void *, unsigned int)':
> >In file included from /usr/src/linux-2.1.41/include/linux/string.h:39,
> > from init/main.c:22:
> >/usr/src/linux-2.1.41/include/asm/string.h:447: warning: control reaches end
> >of non-void function `__constant_memcpy(void *, const void *, unsigned int)'
> >/usr/src/linux-2.1.41/include/asm/string.h: In function `void *
> >__constant_c_and_count_memset(void *, long unsigned int, unsigned int)':
> >/usr/src/linux-2.1.41/include/asm/string.h:598: warning: control reaches end
> >of non-void function `__constant_c_and_count_memset(void *, long unsigned
> >int, unsigned int)'
> >gcc -D__KERNEL__ -I/usr/src/linux-2.1.41/include -Wall -Wstrict-prototypes
> >-O2 -fomit-frame-pointer -x c++ -D__SMP__ -pipe -fno-strength-reduce -m386
> >-DCPU=386 -m486 -DCPU=486 -m486 -malign-loops=2 -malign-jumps=2
> >-malign-functions=2 -DCPU=586 -m486 -mali
> >gn-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -D__SMP__
> >-DUTS_MACHINE='"i386"' -c -o init/version.o init/version.c
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >set -e; for i in kernel drivers mm fs net ipc lib arch/i386/kernel
> >arch/i386/mm arch/i386/lib arch/i386/math-emu; do make -C $i; done
> >make[1]: Entering directory `/usr/src/linux-2.1.41/kernel'
> >make all_targets
> >make[2]: Entering directory `/usr/src/linux-2.1.41/kernel'
> >gcc -D__KERNEL__ -I/usr/src/linux-2.1.41/include -Wall -Wstrict-prototypes
> >-O2 -fomit-frame-pointer -x c++ -D__SMP__ -pipe -fno-strength-reduce -m386
> >-DCPU=386 -m486 -DCPU=486 -m486 -malign-loops=2 -malign-jumps=2
> >-malign-functions=2 -DCPU=586 -m486 -mali
> >gn-loops=2 -malign-jumps=2 -malign-functions=2 -DCPU=686 -D__SMP__
> >-DEXPORT_SYMTAB -c ksyms.c
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >*Initialization*:1: warning: `CPU' redefined
> >*Initialization*:1: warning: this is the location of the previous definition
> >/usr/src/linux-2.1.41/include/asm/string.h: In function `void *
> >__constant_memcpy(void *, const void *, unsigned int)':
> >In file included from /usr/src/linux-2.1.41/include/linux/string.h:39,
> > from /usr/src/linux-2.1.41/include/linux/mm.h:10,
> > from ksyms.c:21:
> >/usr/src/linux-2.1.41/include/asm/string.h:447: warning: control reaches end
> >of non-void function `__constant_memcpy(void *, const void *, unsigned int)'
> >/usr/src/linux-2.1.41/include/asm/string.h: In function `void *
> >__constant_c_and_count_memset(void *, long unsigned int, unsigned int)':
> >/usr/src/linux-2.1.41/include/asm/string.h:598: warning: control reaches end
> >of non-void function `__constant_c_and_count_memset(void *, long unsigned
> >int, unsigned int)'
> >/usr/src/linux-2.1.41/include/linux/sysctl.h: At top level:
> >In file included from ksyms.c:47:
> >/usr/src/linux-2.1.41/include/linux/sysctl.h:251: parse error before string
> >constant
> >/usr/src/linux-2.1.41/include/linux/sysctl.h:340: declaration of identifier
> >`proc_handler' as `int (* proc_handler)(struct ctl_table *, int, struct file
> >*, void *, unsigned int *)'
> >/usr/src/linux-2.1.41/include/linux/sysctl.h:262: conflicts with other use in
> >class as `typedef int ( proc_handler)(struct ctl_table *, int, struct file *,
> >void *, unsigned int *)'
> >/usr/src/linux-2.1.41/include/linux/sysctl.h:351: declaration of identifier
> >`ctl_table' as `struct ctl_table * ctl_table'
> >/usr/src/linux-2.1.41/include/linux/sysctl.h:345: conflicts with other use in
> >class as `typedef struct ctl_table ctl_table'
> >In file included from ksyms.c:59:
> >/usr/src/linux-2.1.41/include/linux/pci.h:657: parse error before `;'
> >/usr/src/linux-2.1.41/include/linux/pci.h:709: parse error before `;'
> >make[2]: *** [ksyms.o] Error 1
> >make[2]: Leaving directory `/usr/src/linux-2.1.41/kernel'
> >make[1]: *** [first_rule] Error 2
> >make[1]: Leaving directory `/usr/src/linux-2.1.41/kernel'
> >make: *** [linuxsubdirs] Error 2
> >
> >
> >
>