I'm sorry to bug you guys with what I'm sure is a simple mistake, but I can't seem to find any other way around the problem. When I try to build a 2.4.18 kernel with kdb-v2.1-2.4.18-common-3 and kdb-v2.1-2.4.18-i386-1, I get the following error:
----- make[2]: Entering directory `/src/DEV/pgroce/CODE/src/kernel.org/kernel/2.4.18/kdb' [...Successful builds of kdb_bt.o, kdb_bp.o, kdb_id.o, kdbsupport.o, gen-kdb_cmds.o omitted...--pg] gcc -D__KERNEL__ -I/src/DEV/pgroce/CODE/src/kernel.org/kernel/2.4.18/include -DWE_REALLY_INSIST_ON_NOT_HAVING_NAT_SUPPORT -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -I /src/DEV/pgroce/CODE/src/kernel.org/kernel/2.4.18/arch/i386/kdb -DKBUILD_BASENAME=kdbmain -DEXPORT_SYMTAB -c kdbmain.c kdbmain.c: In function `kdb_local': kdbmain.c:838: `kdb' undeclared (first use in this function) kdbmain.c:838: (Each undeclared identifier is reported only once kdbmain.c:838: for each function it appears in.) kdbmain.c: At top level: kdbmain.c:1204: parse error before `0' kdbmain.c:1207: `reason' undeclared here (not in a function) kdbmain.c:1212: parse error before `if' kdbmain.c:1216: parse error before `void' kdbmain.c:1222: warning: type defaults to `int' in declaration of `ss_event' kdbmain.c:1222: `reason' undeclared here (not in a function) kdbmain.c:1222: initializer element is not constant kdbmain.c:1222: warning: data definition has no type or storage class kdbmain.c:1223: parse error before `if' kdbmain.c:1269: parse error before string constant kdbmain.c:1270: warning: type defaults to `int' in declaration of `kdb_printf' kdbmain.c:1270: warning: function declaration isn't a prototype kdbmain.c:1270: conflicting types for `kdb_printf' /src/DEV/pgroce/CODE/src/kernel.org/kernel/2.4.18/include/linux/kdb.h:216: previous declaration of `kdb_printf' kdbmain.c:1270: warning: data definition has no type or storage class kdbmain.c:1274: warning: type defaults to `int' in declaration of `recover' kdbmain.c:1274: warning: data definition has no type or storage class kdbmain.c:1275: parse error before `}' kdbmain.c:1278: warning: type defaults to `int' in declaration of `recover' kdbmain.c:1278: redefinition of `recover' kdbmain.c:1274: `recover' previously defined here kdbmain.c:1278: warning: data definition has no type or storage class kdbmain.c:1279: parse error before `}' kdbmain.c:1282: warning: type defaults to `int' in declaration of `recover' kdbmain.c:1282: redefinition of `recover' kdbmain.c:1278: `recover' previously defined here kdbmain.c:1282: warning: data definition has no type or storage class kdbmain.c:1283: parse error before `}' kdbmain.c:1284: parse error before string constant [...about 110 more lines of errors omitted -- I'll post them if necessary...] ----- As you can probably tell by the compile options, this isn't a totally vanilla kernel (it has the bridging-netfilter patch applied as well). However, the patching went with only the following hitches: 1. The common patch failed on the Makefile, so I patched it manually. 2. I had to use -p2 on the i386 patch I will be happy to supply any necessary additional information. Any help would be greatly appreciated. Sincerely, Phil Groce
