[Buildroot] initramfs doesn't get linked into kernel

Adam Nielsen a.nielsen at shikadi.net
Sat Apr 27 09:53:20 UTC 2013


Hi Thomas,

> If you let Buildroot build your kernel, it does that automatically (see
> the code in linux/linux.mk). If you build your kernel outside of
> Buildroot, you have to set CONFIG_INITRAMFS_SOURCE correctly.
>
> If you build your kernel outside of Buildroot, pointing
> CONFIG_INITRAMFS_SOURCE to the .cpio image works just fine. I'm doing
> that all the time here.

Ahh ok, so what I did should have worked then.  Since then I have added 
Ethernet support for my board and tried booting with a root filesystem on NFS. 
  This worked (it mounted the filesystem) but it doesn't seem to be able to 
run the init binary (in this case Busybox built by buildroot.)  Looking at 
tcpdump it correctly follows the symlinks and appears to download the busybox 
binary, but then fails saying it couldn't find init.

I'm not quite sure what the problem is (I'm wondering whether it's a 
compatibility issue like OABI vs EABI or something) but it's possible this is 
what was causing the apparent initramfs failure, since it's the same 
filesystem (I just unzipped the .tar of the root filesystem that buildroot 
generated, into the NFS share.)  I built the kernel with and without EABI 
support though and there was no difference, so I'm not really sure what it 
might be.

I'll keep looking into the problem until I'm able to boot with root on NFS, 
then I'll try initramfs again to see if that works, and report back.

Thanks again,
Adam.





More information about the buildroot mailing list