2002-12-11 22:09:41

by Pascal Bonfils

[permalink] [raw]
Subject: compilation failure

I'm sorry for the disturbance as I feel that it's a very simple
configuration problem but I'm completely stuc with the compilation of
the kernel. I used to do this without problem but after installing
RedHat 8.0 nothing is possible. However I'm still able to compile other
programs in c/c++/gtk+

It seems to complain of not founding some libraries
After the make dep, make bzImage gives (I'm sorry but it's in french) :

make -r -f tmp_include_depends all
make[1]: Entre dans le r?pertoire `/usr/src/linux-2.4.18-18.8.0'
make[1]: Rien ? faire pour `all'.
make[1]: Quitte le r?pertoire `/usr/src/linux-2.4.18-18.8.0'
. scripts/mkversion > .tmpversion
gcc -D__KERNEL__ -I/usr/src/linux-2.4.18-18.8.0/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common
-fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686
-malign-functions=4 -DUTS_MACHINE='"i386"' -DKBUILD_BASENAME=version
-c -o init/version.o init/version.c
cc1: AVERTISSEMENT: -malign-functions est obsol?te, utiliser -falign-loops
make CFLAGS="-D__KERNEL__ -I/usr/src/linux-2.4.18-18.8.0/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common
-fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686
-malign-functions=4 " -C kernel
make[1]: Entre dans le r?pertoire `/usr/src/linux-2.4.18-18.8.0/kernel'
make all_targets
make[2]: Entre dans le r?pertoire `/usr/src/linux-2.4.18-18.8.0/kernel'
gcc -D__KERNEL__ -I/usr/src/linux-2.4.18-18.8.0/include -Wall
-Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common
-fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686
-malign-functions=4 -nostdinc -DKBUILD_BASENAME=sched
-fno-omit-frame-pointer -O2 -c -o sched.o sched.c
cc1: AVERTISSEMENT: -malign-functions est obsol?te, utiliser -falign-loops
Dans le fichier inclus ? partir de
/usr/src/linux-2.4.18-18.8.0/include/linux/wait.h:13,
? partir de /usr/src/linux-2.4.18-18.8.0/include/linux/fs.h:12,
? partir de
/usr/src/linux-2.4.18-18.8.0/include/linux/capability.h:17,
? partir de
/usr/src/linux-2.4.18-18.8.0/include/linux/binfmts.h:5,
? partir de /usr/src/linux-2.4.18-18.8.0/include/linux/sched.h:9,
? partir de /usr/src/linux-2.4.18-18.8.0/include/linux/mm.h:4,
? partir de sched.c:19:
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:10:20: stdarg.h:
Aucun fichier ou r?pertoire de ce type
Dans le fichier inclus ? partir de
/usr/src/linux-2.4.18-18.8.0/include/linux/wait.h:13,
? partir de /usr/src/linux-2.4.18-18.8.0/include/linux/fs.h:12,
? partir de
/usr/src/linux-2.4.18-18.8.0/include/linux/capability.h:17,
? partir de
/usr/src/linux-2.4.18-18.8.0/include/linux/binfmts.h:5,
? partir de /usr/src/linux-2.4.18-18.8.0/include/linux/sched.h:9,
? partir de /usr/src/linux-2.4.18-18.8.0/include/linux/mm.h:4,
? partir de sched.c:19:
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:73: erreur d'analyse
syntaxique avant ? va_list ?
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:73: AVERTISSEMENT:
d?claration de fonction n'est pas un prototype
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:76: erreur d'analyse
syntaxique avant ? va_list ?
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:76: AVERTISSEMENT:
d?claration de fonction n'est pas un prototype
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:80: erreur d'analyse
syntaxique avant ? va_list ?
/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:80: AVERTISSEMENT:
d?claration de fonction n'est pas un prototype
sched.c: Dans la fonction ? sys_sched_yield ?:
sched.c:1374: AVERTISSEMENT: variable inutilis?e ? rq ?
make[2]: *** [sched.o] Erreur 1
make[2]: Quitte le r?pertoire `/usr/src/linux-2.4.18-18.8.0/kernel'
make[1]: *** [first_rule] Erreur 2
make[1]: Quitte le r?pertoire `/usr/src/linux-2.4.18-18.8.0/kernel'
make: *** [_dir_kernel] Erreur 2

Many thanks in advance.

Pascal Bonfils / [email protected]


2002-12-15 11:17:12

by Keith Owens

[permalink] [raw]
Subject: Re: compilation failure

On Wed, 11 Dec 2002 23:22:55 +0100,
[email protected] wrote:
>It seems to complain of not founding some libraries
>After the make dep, make bzImage gives (I'm sorry but it's in french) :
>/usr/src/linux-2.4.18-18.8.0/include/linux/kernel.h:10:20: stdarg.h:
>Aucun fichier ou r?pertoire de ce type
>Dans le fichier inclus ? partir de

Look in Makefile, find a line like this

kbuild_2_4_nostdinc := -nostdinc $(shell $(CC) -print-search-dirs | sed -ne 's/install: \(.*\)/-I \1include/gp')

Change '$(CC)' to 'LANG=C $(CC)'.

The standard 2.4.18 kernel does not use -nostdinc but RH have
backported the patch from 2.4.19.