From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020724 Description of problem: While compiling the 2.4.18-7.70 kernel on a Sony Vaio PCG-F350 laptop, 'make modules' failed on the following error: make -C afs modules make[2]: Entering directory `/usr/src/linux-2.4.18-7.80/fs/afs' gcc -D__KERNEL__ -I/usr/src/linux-2.4.18-7.80/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.18-7.80/include/linux/modversions.h -nostdinc -I /usr/lib/gcc-lib/i386-redhat-linux/3.2/include -DKBUILD_BASENAME=callback -c -o callback.o callback.c In file included from server.h:15, from callback.c:19: types.h:16:25: rxrpc/types.h: No such file or directory In file included from server.h:15, from callback.c:19: types.h:103: field `addr' has incomplete type In file included from callback.c:19: server.h:17:24: rxrpc/peer.h: No such file or directory In file included from callback.c:19: server.h:33: field `addr' has incomplete type server.h: In function `afs_server_get_from_peer': server.h:69: dereferencing pointer to incomplete type make[2]: *** [callback.o] Error 1 make[2]: Leaving directory `/usr/src/linux-2.4.18-7.80/fs/afs' make[1]: *** [_modsubdir_afs] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.18-7.80/fs' make: *** [_mod_fs] Error 2 I was doing a kernel build in order to incorporate the latest release of iptables from http://netfilter.gnumonks.org/ (iptables version 1.2.6a). The kernel had been patched by the iptables 'patch-o-matic' software and needed to be recompiled. Version-Release number of selected component (if applicable): How reproducible: Didn't try Steps to Reproduce: 1.Download iptables 1.2.6a 2.From within the iptables directory, and as the root user, run: make pending-patches KERNEL_DIR=/usr/src/linux-2.4.18-7.70 3. Patches will apply. When done: 4. Copy config file from /boot to /usr/src/linux-2.4.18-7.70 5. Edit extraversion string in Makefile. 6. make menuconfig 7. remove support for Dell and Toshiba laptops from the processor options. 8. Exit, saving config. 9. make dep 10. make clean 11. make mrproper 12. make bzImage 13. make modules Actual Results: Make bzImage succeeded. Make modules fails as indicated above.Looks like an expected file isn't there in the kernel source tree. Expected Results: Make modules should have succeeded. Additional info:
Confirmed with kernel-source-2.4.18-7.80. Additionally if you disable able afs module and then try to build a kernel using the i686.config file it fails: gcc -D__KERNEL__ -I/usr/src/linux-2.4.18-7.80/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe - mpreferred-stack-boundary=2 -march=i686 -DMODULE -DMODVERSIONS -include /usr/src /linux-2.4.18-7.80/include/linux/modversions.h -nostdinc -I /usr/lib/gcc-lib/i3 86-redhat-linux/3.2/include -DKBUILD_BASENAME=sysinfo -c -o sysinfo.o sysinfo.c sysinfo.c:11:27: linux/compile.h: No such file or directory sysinfo.c: In function `svr4_sysinfo': sysinfo.c:85: `UTS_VERSION' undeclared (first use in this function) sysinfo.c:85: (Each undeclared identifier is reported only once sysinfo.c:85: for each function it appears in.) make[2]: *** [sysinfo.o] Error 1 make[2]: Leaving directory `/usr/src/linux-2.4.18-7.80/abi/svr4' make[1]: *** [_modsubdir_svr4] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.18-7.80/abi' make: *** [_mod_abi] Error 2 [root@mirage linux]# locate compile.h /usr/share/doc/db4-devel-4.0.14/ref/debug/compile.html /usr/include/python2.2/compile.h
this is because you typed make modules without ever having done make bzImage.... make bzImage (it doesn't need to complete, just a few .c files) sets up the kernel for compiling....