[Buildroot] Kernel zImage under 1MB
peter at korsgaard.com
Tue Jun 9 22:11:26 UTC 2015
>>>>> "Michal" == Michal Gonda <gonda.miso at gmail.com> writes:
> Hi guys,
> I am trying to build *minimal kernel under 1 Mb with Buildroot*. It is
> intended for small board with *qspi memory* and *basic functionality,
> ethernet, usb, spi,* and *some GPIO's*. Basic terminal access via *ssh* and
> *UART*. My first thoughts are if it is even possible to modify kernel
> *.config* via *linux-menuconfig* to reach this size.
> Also if it is possible to *identify the redundant parts* without deep
> knowledge about kernel architecture and exclude them from compilation.
> If someone can direct me to good direction how to solve this problem or
> even specify some tools and ways how to do it would be very helpful.
This is more of a kernel question than something specific to
Buildroot. You didn't specify your exact hardware setup, and if your 1MB
(I guess you mean MB=megabyte and not Mb=megabit) is flash size or
runtime memory use, but a modern Linux kernel with the above features is
unlikely to fit within that space with just tweaking configuration
For buildroot itself, for a static uClibc based build with busybox +
dropbear (ARMv7, thumb2) our .xz compressed rootfs is ~450KB, but our
default busybox config is quite bloated, so it can easily be trimmed to
something significantly smaller (I did a quick test and ended up ~250KB
still with a shell and the basic coreutils and networking commands).
Bye, Peter Korsgaard
More information about the buildroot