make menuconfig->内核->内核二进制格式我只有“ uImage,zImage,vmlinux和自定义目标”。 Image.elf没有选项。有什么方法可以生成Image.elf吗?
vmlinux和Image.elf有什么区别?
答案 0 :(得分:0)
有一种方法可以生成Linux内核Image
目标(即,通过命令行通过make -jN Image modules dtbs
之类以常规方式编译linux内核源代码时的目标)。在主线buildroot中,可以在此处看到kconfig菜单选项:
如果直接编辑buildroot配置文件(.config
),则Image
和vmlinux
目标的配置符号分别是BR2_LINUX_KERNEL_IMAGE
和BR2_LINUX_KERNEL_VMLINUX
。 / p>
vmlinux
目标是ELF
格式的静态链接的内核二进制文件。这在需要调试内核时特别有用。 Image
目标是未静态链接且不是ELF
二进制格式的linux内核。在上面的特定示例中,Das U-boot将在正常平台初始化后将程序控制权交给Image
二进制文件。
看到Image
内核二进制格式选项未在buildroot kconfig中出现,您应该能够通过选择定制目标配置选项并手动输入ASCII字符串{{1}来产生它。 }。您可能还很幸运,完全取消了所有内核配置项的选择,并从部分或完全空白的配置集重新开始。上面的屏幕截图是从buildroot实例获取的,该实例在此答案的日期前后同步到主开发master分支。