Newsgroup: it.comp.os.linux.iniziare
Titolo: Problemi di compilazione kernel: AIUTO!!

La compilazione del mio kernel non stà andando a buon fine purtroppo...
Visto che sono alle prime armi non ho la più pallida idea di dove sto
sbagliando...
Magari voi, che l'avete compilato e ricompilato potete aiutarmi, no?
Dopo
$make xconfig
$make dep
$make clean
Dò
$make bzImage
che dovrebbe crearmi un immagine chiamata bzImage, giusto?
Purtroppo l'immagine non viene creata quindi presuppongo che tutto non vada
bene...
Ho eseguito il comando
$make bzImage > bz.txt
e ora vi posto cosa mi dice...
<Inizio del file bz.txt>
gcc -D__KERNEL__ -I/usr/src/linux-2.2.14/include -Wall -Wstrict-prototypes -
O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -m38
6 -DCPU=386 -DUTS_MACHINE='"i386"' -c -o init/version.o init/version.c
make -C  kernel
make[1]: Entering directory `/usr/src/linux-2.2.14/kernel'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/kernel'
make[2]: Leaving directory `/usr/src/linux-2.2.14/kernel'
make[1]: Leaving directory `/usr/src/linux-2.2.14/kernel'
make -C  drivers
make[1]: Entering directory `/usr/src/linux-2.2.14/drivers'
make -C block
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/block'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/block'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/block'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/block'
make -C char
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/char'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/char'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/char'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/char'
make -C net
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/net'
make -C fc
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/net/fc'
make all_targets
make[4]: Entering directory `/usr/src/linux-2.2.14/drivers/net/fc'
make[4]: Nothing to be done for `all_targets'.
make[4]: Leaving directory `/usr/src/linux-2.2.14/drivers/net/fc'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/net/fc'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/net'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/net'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/net'
make -C misc
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/misc'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/misc'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/misc'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/misc'
make -C sound
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/sound'
make -C lowlevel
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/sound/lowlevel'
make all_targets
make[4]: Entering directory `/usr/src/linux-2.2.14/drivers/sound/lowlevel'
make[4]: Nothing to be done for `all_targets'.
make[4]: Leaving directory `/usr/src/linux-2.2.14/drivers/sound/lowlevel'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/sound/lowlevel'
make -C emu10k1
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/sound/emu10k1'
make[3]: `audio.o' is up to date.
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/sound/emu10k1'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/sound'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/sound'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/sound'
make -C pci
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/pci'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/pci'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/pci'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/pci'
make -C video
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/video'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/video'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/video'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/video'
make -C scsi
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/scsi'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/scsi'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/scsi'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/scsi'
make -C pnp
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/pnp'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/pnp'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/pnp'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/pnp'
make -C cdrom
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers/cdrom'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/drivers/cdrom'
make[3]: Leaving directory `/usr/src/linux-2.2.14/drivers/cdrom'
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers/cdrom'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/drivers'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/drivers'
make[1]: Leaving directory `/usr/src/linux-2.2.14/drivers'
make -C  mm
make[1]: Entering directory `/usr/src/linux-2.2.14/mm'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/mm'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/mm'
make[1]: Leaving directory `/usr/src/linux-2.2.14/mm'
make -C  fs
make[1]: Entering directory `/usr/src/linux-2.2.14/fs'
make -C ext2
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/ext2'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/ext2'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/ext2'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/ext2'
make -C fat
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/fat'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/fat'
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/fat'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/fat'
make -C msdos
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/msdos'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/msdos'
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/msdos'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/msdos'
make -C vfat
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/vfat'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/vfat'
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/vfat'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/vfat'
make -C proc
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/proc'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/proc'
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/proc'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/proc'
make -C isofs
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/isofs'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/isofs'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/isofs'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/isofs'
make -C nls
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/nls'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/nls'
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/nls'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/nls'
make -C umsdos
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/umsdos'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/umsdos'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/umsdos'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/umsdos'
make -C devpts
make[2]: Entering directory `/usr/src/linux-2.2.14/fs/devpts'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/fs/devpts'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/fs/devpts'
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs/devpts'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/fs'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/fs'
make[1]: Leaving directory `/usr/src/linux-2.2.14/fs'
make -C  net
make[1]: Entering directory `/usr/src/linux-2.2.14/net'
make -C core
make[2]: Entering directory `/usr/src/linux-2.2.14/net/core'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/core'
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/core'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/core'
make -C ethernet
make[2]: Entering directory `/usr/src/linux-2.2.14/net/ethernet'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/ethernet'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/ethernet'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/ethernet'
make -C sched
make[2]: Entering directory `/usr/src/linux-2.2.14/net/sched'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/sched'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/sched'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/sched'
make -C 802
make[2]: Entering directory `/usr/src/linux-2.2.14/net/802'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/802'
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/802'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/802'
make -C ipv4
make[2]: Entering directory `/usr/src/linux-2.2.14/net/ipv4'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/ipv4'
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/ipv4'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/ipv4'
make -C unix
make[2]: Entering directory `/usr/src/linux-2.2.14/net/unix'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/unix'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/unix'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/unix'
make -C netlink
make[2]: Entering directory `/usr/src/linux-2.2.14/net/netlink'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/netlink'
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/netlink'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/netlink'
make -C packet
make[2]: Entering directory `/usr/src/linux-2.2.14/net/packet'
make all_targets
make[3]: Entering directory `/usr/src/linux-2.2.14/net/packet'
make[3]: Nothing to be done for `all_targets'.
make[3]: Leaving directory `/usr/src/linux-2.2.14/net/packet'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net/packet'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/net'
make[2]: Leaving directory `/usr/src/linux-2.2.14/net'
make[1]: Leaving directory `/usr/src/linux-2.2.14/net'
make -C  ipc
make[1]: Entering directory `/usr/src/linux-2.2.14/ipc'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/ipc'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/ipc'
make[1]: Leaving directory `/usr/src/linux-2.2.14/ipc'
make -C  lib
make[1]: Entering directory `/usr/src/linux-2.2.14/lib'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/lib'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/lib'
make[1]: Leaving directory `/usr/src/linux-2.2.14/lib'
make -C  arch/i386/kernel
make[1]: Entering directory `/usr/src/linux-2.2.14/arch/i386/kernel'
make[1]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/kernel'
make -C  arch/i386/mm
make[1]: Entering directory `/usr/src/linux-2.2.14/arch/i386/mm'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/arch/i386/mm'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/mm'
make[1]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/mm'
make -C  arch/i386/lib
make[1]: Entering directory `/usr/src/linux-2.2.14/arch/i386/lib'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/arch/i386/lib'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/lib'
make[1]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/lib'
make -C  arch/i386/math-emu
make[1]: Entering directory `/usr/src/linux-2.2.14/arch/i386/math-emu'
make all_targets
make[2]: Entering directory `/usr/src/linux-2.2.14/arch/i386/math-emu'
make[2]: Nothing to be done for `all_targets'.
make[2]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/math-emu'
make[1]: Leaving directory `/usr/src/linux-2.2.14/arch/i386/math-emu'
gcc -E -C -P -I/usr/src/linux-2.2.14/include -imacros
/usr/src/linux-2.2.14/include/asm-i386/page_offset.h -Ui386
arch/i386/vmlinux.lds.S >arch/i386/vmlinux.lds
ld -m elf_i386 -T /usr/src/linux-2.2.14/arch/i386/vmlinux.lds -e stext
arch/i386/kernel/head.o arch/i386/kernel/init_task.o init/main.o
init/version.o \
 --start-group \
 arch/i386/kernel/kernel.o arch/i386/mm/mm.o kernel/kernel.o mm/mm.o fs/fs.o
ipc/ipc.o \
 fs/filesystems.a \
 net/network.a \
 drivers/block/block.a drivers/char/char.a drivers/misc/misc.a
drivers/net/net.a drivers/scsi/scsi.a drivers/cdrom/cdrom.a
drivers/pci/pci.a drivers/net/fc/fc.a drivers/pnp/pnp.a
drivers/video/video.a arch/i386/math-emu/math.a \
 /usr/src/linux-2.2.14/arch/i386/lib/lib.a /usr/src/linux-2.2.14/lib/lib.a
/usr/src/linux-2.2.14/arch/i386/lib/lib.a \
 --end-group \
 -o vmlinux
<Eof>
Scusate per aver postato tutto il file, ma non sapevo come fare.
Qualcuno può dirmi se è normale oppure c'è qualcosa che non và??
Grazie in anticipo!!!
Ciao

che dovrebbe crearmi un immagine chiamata bzImage, giusto?
Usi LILO ? Hai provato con "make bzlilo" ?
-- 
                                                                  __
 __                                                          __  ///
| _          Computer Science, Swiss Federal Institute       \\\///
|__|iambo    of Technology - mailto:
ggia...@iiic.ethz.ch
     \X//

 Magari voi, che l'avete compilato e ricompilato potete aiutarmi, no?
vai sotto X, apri xterm o un altro terminale e dai:
make xconfig    (configura quello che ti serve...)
make dep        (questo prepara il make)
make bzImage    (questo ti da l'immagine principale del kernel)
make modules && make modules_install
   (questo crea ed installa i moduli)
make install    (questo copia l'immagine nella dir /boot)
depmod          (codesto aggiusta i moduli e i link)
lilo -v         (infine questo installa _realmente_ il kernel)
mi raccomando, dai "lilo -v" SOLO se non hai avuto errori!!!
--
Gioele Barabucci (.Gb) [
gio...@gioelebarabucci.com
]

che dovrebbe crearmi un immagine chiamata bzImage, giusto?
No. Crea una immagine normale MA NON LA INSTALLA. Se vuoi creare
l'immagine e installarla con LILO, devi fare:
make bzlilo
make modules
make modules_install
e poi riavviare. Per sicurezza, PRIMA di ricompilare, io faccio cosi' (e
se va bene a me, buona camicia a tutti):
1) Copio l'immagine:
	se e' in /
		cp /vmlinuz /previous
	se e' in /boot
		cp /boot/vmlinuz /boot/previous
2) Edito /etc/lilo.conf, dove trovo di solito
	# End LILO global Section
	#
	image = /boot/vmlinuz
	  root = /dev/hda1
	  label = Linux
   e la modifico in
	image = /boot/previous
	  root = /dev/hda1
	  label = Recovery
	image = /boot/vmlinuz
	  root = /dev/hda1
	  label = Linux
A questo punto, PER DEFAULT "make bzlilo" installa si' l'immagine,
ma se faccio il boot normale parte il kernel VECCHIO.
A quel punto, riavvio, al boot premo SHIFT e scrivo "linux" quando
LILO mi presenta il prompt. Parte il kernel nuovo.
Se si pianta perche' ho fatto casini (e io faccio SEMPRE casini) a
quel punto il riavvio successivo non fa ripartire il kernel bacato
- inchiodandomi la macchina! - ma il kernel vecchio e sano. Con il
quale ripeto la compilazione, bestemmiando come un turco.
Leonardo
P.S. Il prossimo log, posta solo le ultime 30 righe. Invece di
	comando > log.txt
     fai
	comando | tail -n 30 > log.txt
".signature": bad command or file name