如何从buildroot生成Image.elf?

时间:2019-01-12 08:00:41

标签: elf buildroot

make menuconfig->内核->内核二进制格式我只有“ uImage,zImage,vmlinux和自定义目标”。 Image.elf没有选项。有什么方法可以生成Image.elf吗?

vmlinux和Image.elf有什么区别?

1 个答案:

答案 0 :(得分:0)

有一种方法可以生成Linux内核Image目标(即,通过命令行通过make -jN Image modules dtbs之类以常规方式编译linux内核源代码时的目标)。在主线buildroot中,可以在此处看到kconfig菜单选项:

buildroot menuconfig 1[1] buildroot menuconfig 2[2]

如果直接编辑buildroot配置文件(.config),则Imagevmlinux目标的配置符号分别是BR2_LINUX_KERNEL_IMAGEBR2_LINUX_KERNEL_VMLINUX。 / p>

vmlinux目标是ELF格式的静态链接的内核二进制文件。这在需要调试内核时特别有用。 Image目标是未静态链接且不是ELF二进制格式的linux内核。在上面的特定示例中,Das U-boot将在正常平台初始化后将程序控制权交给Image二进制文件。

看到Image内核二进制格式选项未在buildroot kconfig中出现,您应该能够通过选择定制目标配置选项并手动输入ASCII字符串{{1}来产生它。 }。您可能还很幸运,完全取消了所有内核配置项的选择,并从部分或完全空白的配置集重新开始。上面的屏幕截图是从buildroot实例获取的,该实例在此答案的日期前后同步到主开发master分支。