Messages in this thread Patch in this message | | | From | Shawn McHorse <> | Subject | Problem compiling 'setup.S' in 1.3.86+ | Date | Mon, 15 Apr 1996 18:28:36 -0500 (CDT) |
| |
Hello, all. Just ran into a problem in attempting to compile the last few Linux kernels. Here's the log from the end of the 'make zImage':
gcc -D__KERNEL__ -I/usr/src/linux-1.3.88/include -E -D__ELF__ -traditional -DSVGA_MODE=NORMAL_VGA setup.S -o setup.s as86 -0 -a -o setup.o setup.s 01519 0760 E8 0000 call outidx ***** ^unbound label ***** ^relocation impossible 01521 0766 E8 0000 call outidx ***** ^unbound label ***** ^relocation impossible 01523 076C E8 0000 call outidx ***** ^unbound label ***** ^relocation impossible 01525 0772 E8 0000 call outidx ***** ^unbound label ***** ^relocation impossible 01527 0778 E8 0000 call outidx ***** ^relocation impossible ***** ^unbound label 01529 077E E8 0000 call outidx ***** ^unbound label ***** ^relocation impossible 01531 0784 E8 0000 call outidx ***** ^unbound label ***** ^relocation impossible 01553 07AA E8 0000 setvde: call outidx ***** ^unbound label ***** ^relocation impossible
00016 errors 00000 warnings make[1]: *** [setup.o] Error 1 make[1]: Leaving directory `/usr/src/linux-1.3.88/arch/i386/boot' make: *** [zImage] Error 2
I was able to successfully compile 1.3.85 but not 1.3.86 or 1.3.88. I noticed that 'outidx' appeared to be defined in video.S. And I've been applying the following patch to my kernel source to get rid of as much of the video code as possible.
--- video.S.orig Mon Apr 15 13:02:12 1996 +++ video.S Mon Apr 15 13:04:08 1996 @@ -6,10 +6,10 @@ !
! Enable autodetection of SVGA adapters and modes -#define CONFIG_VIDEO_SVGA +#undef CONFIG_VIDEO_SVGA
! Enable autodetection of VESA modes -#define CONFIG_VIDEO_VESA +#undef CONFIG_VIDEO_VESA
! Enable compacting of mode table #define CONFIG_VIDEO_COMPACT
So it appears that 'setup.S' depends on CONFIG_VIDEO_SVGA being defined. Which seems flawed, IMHO. While we're on the subject, _WHY_ is all this damned video code in the kernel in the first place?!?! I boot up in normal 80x25 mode, and then use SVGATextMode to switch to 100x37. SVGATextMode is a perfectly good user-mode program for doing this. I really fail to see the point in including page after page of code in 'video.S' to detect and set modes for every video card on the planet. At the LEAST, there should be a compile-time option to get rid of this unnecessary code bloat. It'd be nice if patches like the above were not necessary.
Shawn McHorse riffraff@texas.net An Austin NorthCross-Dresser
| |