在 Linux 中的帧缓冲区上制作 Qt GUI 应用程序 运行

Making a Qt GUI application run on a framebuffer in Linux

我正在用 Qt 开发 GUI。目标平台是 Linux / ARMv6-based Raspberry Pi Zero W,发行版是自定义的 Poky / Yocto 发行版。我将显示模块(基于 ILI9341 的 2.4" SPI TFT 显示器)连接到 Raspberry Pi,我希望我的 Qt 应用程序在显示驱动程序提供的帧缓冲区 /dev/fb1 上 运行。

当前的帧缓冲驱动程序允许我在显示模块中显示桌面,即:

FRAMEBUFFER=/dev/fb1 startx

前面的命令间接实现了我想做的事情。但是,我不想显示我的桌面。我只想指定一个帧缓冲区作为 Qt 应用程序的显示平台(而不是使用 DISPLAY 环境变量)

非常感谢任何关于如何通过对可执行文件使用命令行参数、通过应用程序代码或同时使用这两种方法来实现这一点的指导。

运行Qt直接对framebuffer进行了说明here.

简而言之,您将使用 Qt 的 linuxfb 驱动程序,它将您与系统上可用的 /dev/fbX 连接起来。

还提供了更多信息 here