build立一个embeddedQt的最小系统,并运行在Qemu for x86上

我的目标:试图

  • 用USB连接一个窗口和传感器,构build一个最小的基于Qt的GUI系统
  • 使用Qemu和后来的embedded式板用primefaces来演示这个
  • 从头开始构build它
  • 使用buildroot来构build根文件系统

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

我的尝试 :build立内核和rootfile系统

  • 用buildroot命令make qemu_x86_defconfig
  • Linux内核上的帧缓冲区支持与以下CONFIG_FB,CONFIG_FRAMEBUFFER_CONSOLE和CONFIG_LOGO一起启用(以下所有选项也被启用)

作为第一个里程碑,我期望在使用命令qemu-system-i386 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2 -append root=/dev/sda -vga std但我qemu-system-i386 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2 -append root=/dev/sda -vga std

我在Qemu命令中犯了错误,还是帧缓冲器未启用?

PS类似的问题Qt应用程序GUI – 自动启动–linux 。 但我不打算使用大多数用户build议的X窗口。

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

所以步骤是:

  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运行命令

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

  make clean make qemu_x86_defconfig make 

然后阅读board/qemu/x86/readme.txt来查看如何运行生成的系统。