我正在尝试使用Buildroot构建1 Mb以下的最小内核.它适用于具有qspi内存和基本功能的小型主板,以太网,USB,spi和一些GPIO.通过ssh和UART进行基本终端访问.
我的第一个想法是,如果甚至可以通过linux-menuconfig修改内核.config来达到这个大小.
此外,如果可以在不深入了解内核体系结构的情况下识别冗余部分并将其从编译中排除.
如果有人能指导我如何解决这个问题,甚至指定一些工具和方法,那将是非常有帮助的.
谢谢!
解决方法:
如果您的主板上有构建根目录,那么最好继续使用它.禁用内核选项的技术应该是相同的.在article中,他失去了很多功能,达到了~0,7MB uImage(p40).他从最小(裸)配置(p27)开始并添加配置块.因此,您可以创建尽可能小的uImage,而不是识别冗余部分.比添加更多选项:ext2,串口等.实际上这项工作需要大量的测试.你可能会制造依赖性.
可以使用diff -Naur比较内核配置(工作和新配置),这样您就可以看到改变了什么.
无关:
看起来像altera正式支持yocto. here是如何构建altera-image-minimal的说明.如果你对它的尺寸很好,那就不要使用它,也不要花时间去减少uImage.如果您需要安装额外的软件包,那么您可以轻松扩展它.
here是关于构建Angstrom(基于yocto的分发)的说明.您可以基于console-image-minimal创建自定义图像.
我在生产中使用Angstrom.必须说,第一次使用它真的很难.