Kompilowanie kernela [2.0.x]

0

Witam,

Mam problem z kompilowaniem starszych kerneli takich jak 2.0.36.

#make bzImage
make[1]: Entering directory `/home/distro/net/kernels/linux/arch/i386/boot'
make[1]: Nothing to be done for `dep'.
make[1]: Leaving directory `/home/distro/net/kernels/linux/arch/i386/boot'
scripts/mkdep init/*.c > .tmpdepend
scripts/mkdep `find /home/distro/net/kernels/linux/include/asm /home/distro/net/kernels/linux/include/linux /home/distro/net/kernels/linux/include/scsi /home/distro/net/kernels/linux/include/net -follow -name \*.h ! -name modversions.h -print` > .hdepend
/home/distro/net/kernels/linux/include/asm/mtrr.h needs config but has not included config file
/home/distro/net/kernels/linux/include/linux/if_frad.h doesn't need config
set -e; for i in kernel drivers mm fs net ipc lib arch/i386/kernel arch/i386/mm arch/i386/lib; do make -C $i fastdep; done
make[1]: Entering directory `/home/distro/net/kernels/linux/kernel'
if [ -n "dma.c exec_domain.c exit.c fork.c info.c itimer.c ksyms.c module.c panic.c printk.c resource.c sched.c signal.c softirq.c sys.c sysctl.c time.c" ]; then \
        /home/distro/net/kernels/linux/scripts/mkdep *.[chS] > .depend; fi
make[1]: Leaving directory `/home/distro/net/kernels/linux/kernel'
make[1]: Entering directory `/home/distro/net/kernels/linux/drivers'
if [ -n "" ]; then \
        /home/distro/net/kernels/linux/scripts/mkdep *.[chS] > .depend; fi
set -e; for i in block char net  pci sbus scsi sound cdrom isdn; do make -C $i fastdep; done
make[2]: Entering directory `/home/distro/net/kernels/linux/drivers/block'
if [ -n "ali14xx.c amiflop.c ataflop.c cmd640.c dtc2278.c floppy.c genhd.c hd.c ht6560b.c ide-cd.c ide-floppy.c ide-tape.c ide-tape.h ide.c ide.h ide_modes.h linear.c ll_rw_blk.c loop.c md.c promise.c promise.h qd6580.c raid0.c raid1.c raid5.c rd.c rz1000.c triton.c umc8672.c xd.c" ]; then \
        /home/distro/net/kernels/linux/scripts/mkdep *.[chS] > .depend; fi
make[2]: Leaving directory `/home/distro/net/kernels/linux/drivers/block'
make[2]: Entering directory `/home/distro/net/kernels/linux/drivers/char'
if [ -n "amigamouse.c apm_bios.c atarimouse.c atixlmouse.c baycom.c busmouse.c cd1865.h conmakehash.c console.c console_struct.h consolemap.c consolemap.h cyclades.c defkeymap.c diacr.h digi.h digi_bios.h digi_fep.h fbmem.c fep.h h8.c h8.h isicom.c istallion.c kbd_kern.h keyb_m68k.c keyboard.c lp.c lp_intern.c lp_m68k.c mem.c misc.c msbusmouse.c n_tty.c pcwd.c pcxx.c pcxx.h psaux.c pty.c random.c riscom8.c riscom8.h riscom8_reg.h rtc.c scc.c selection.c selection.h serial.c softdog.c specialix.c specialix_io8.h stallion.c tga.c tpqic02.c tty_io.c tty_ioctl.c vc_screen.c vesa_blank.c vga.c vt.c vt_kern.h wd501p.h wdt.c" ]; then \
        /home/distro/net/kernels/linux/scripts/mkdep *.[chS] > .depend; fi
/bin/sh: line 1:  1891 Bus error               /home/distro/net/kernels/linux/scripts/mkdep *.[chS] >.depend
make[2]: *** [fastdep] Error 135
make[2]: Leaving directory `/home/distro/net/kernels/linux/drivers/char'
make[1]: *** [fastdep] Error 2
make[1]: Leaving directory `/home/distro/net/kernels/linux/drivers'
make: *** [dep-files] Error 2

Z kompilacją wersji 2.6 nie ma żadnych problemów.
Pomyślałem aby skompilować kernela na linuxie slackware 3.2 lecz system ten ma problem z zapisem danych na dysku(VirtualBox), więc zchrootowałem wersję live.

root@slack:~/kernel/linux# make bzImage
make[1]: Entering directory `/root/kernel/linux/arch/i386/boot'
make[1]: Nothing to be done for `dep'.
make[1]: Leaving directory `/root/kernel/linux/arch/i386/boot'
scripts/mkdep init/*.c > .tmpdepend
/bin/sh: scripts/mkdep: No such file or directory
make: *** [dep-files] Error 126

Jak takie wersje kompilować?

0

Pomysł z użyciem starej dystrybucji (najlepiej takiej z kernelem 2.0 właśnie na pokładzie) jest dobry. Wiele rzeczy mogło się zmienić "od tamtych czasów" które ci uniemożliwią kompilację.
Jeśli Slackware nie chodzi pod VirtualBoksem, spróbuj pod innym emulatorem.
Raczej nie licz na udaną kompilację w systemach live, chyba że płyta instalacyjna Gentoo - która z założenia daje taką możliwość.

1 użytkowników online, w tym zalogowanych: 0, gości: 1