Cannot compile kernel without Initial RAM filesystem and RAM disk (initramfs/initrd) support

Federico giacof at tiscali.it
Thu Nov 8 16:26:25 UTC 2007


Il Thursday 08 November 2007 16:37:29 Mike Leone ha scritto:
> giacof at tiscali.it (giacof at tiscali.it) had this to say on 11/08/07 at 07:28: 
> > Hello, I tried to build a custom 2.6.22 kernel on Kubuntu Gutsy without initramfs support, but the compilation stops with the following error:
> > 
> > init/built-in.o: In function `start_kernel':
> > /usr/src/linux-source-2.6.22/init/main.c:635: undefined reference to `early_populate_rootfs'
> > make[1]: *** [.tmp_vmlinux1] Error 1
> > make[1]: Leaving directory `/usr/src/linux-source-2.6.22'
> > make: *** [debian/stamp-build-kernel] Error 2
> > 
> > I can post my .config, if needed. In any case, I don't like the idea to be forced to enable initramfs.
> 
> Why not? What does having it limit you?
> 
> (I had the same issue, although not on gutsy, and I just used the initramfs)
>

Well, there were planties of discussions about it: I think that initrd is mainly useful to official distributions, which have to support any existing hdd controller and a variety of different file systems.
Of course, it would be a nonsense to compile all possible drivers statically in the kernel, and that's why they are built as modules and loaded dinamically in the ram disk.
If I compile the kernel for my own PC only, I know what support has to be included in the kernel itself (just the one needed by my hardware), thus the initrd would be an unnecessary overhead that makes the boot process slightly slower.

In any case, and that's even more relevant to me, it should be possible *in principle* to compile the kernel without initramfs/initrd support: if any attempt fails, it means there is something wrong and I'm willing to find it out...




More information about the kubuntu-users mailing list