构建一个嵌入了Qt的最小系统,并在Qemu for x86上运行

时间:2014-02-27 11:12:41

标签: linux linux-kernel qemu buildroot

我的目标:尝试

  • 使用USB连接单个窗口和传感器构建基于Qt的最小GUI系统
  • 使用Qemu以及稍后使用原子
  • 的嵌入式电路板演示此内容
  • 从头开始构建
  • 使用buildroot构建rootfilesystem

我的经验具有设备驱动程序,qemu,Buildroot,USB的Linux内核开发经验,但没有GUI和帧缓冲区的经验。

我的尝试:构建内核和根文件系统

    使用命令make qemu_x86_defconfig 使用buildroot
  • 启用Linux内核上的Framebuffer支持以及以下CONFIG_FB,CONFIG_FRAMEBUFFER_CONSOLE和CONFIG_LOGO(此处的所有选项也已启用)

作为第一个里程碑,当我使用命令运行图像时,我希望看到TUX徽标 qemu-system-i386 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2 -append root=/dev/sda -vga std但我不赞成。

我是否在Qemu命令中犯了错误或者没有启用帧缓冲?

P.S。一个类似的问题Qt application GUI -- automatic start -- linux。但我不打算像大多数用户建议的那样使用X窗口。

2 个答案:

答案 0 :(得分:3)

我错过了卷云显卡驱动程序。 Qemu使用Bochs VESA扩展模拟Cirrus CLGD 5446 PCI VGA卡或虚拟VGA卡(硬件级别,包括i386的所有非标准模式。

所以步骤是:

  1. 下载buildroot
  2. make clean
  3. make qemu_x86_defconfig
  4. make linux-menuconfig配置内核并在Device drivers->Graphics support->Support for frame buffer devices启用Cirrus Logic support
  5. 保存配置并运行make
  6. 完成make后,运行board/qemu/x86/readme.txt
  7. 中的命令

答案 1 :(得分:1)

你在哪里看到Buildroot有一个i386_defconfig?你似乎混淆了内核defconfigs和Buildroot defconfigs。我建议你从:

开始
  make clean
  make qemu_x86_defconfig
  make

然后阅读board/qemu/x86/readme.txt以了解如何运行生成的系统。