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

在Linux中使Qt GUI应用程序在帧缓冲区上运行,linux,qt,framebuffer,Linux,Qt,Framebuffer,我正在用Qt开发一个GUI。目标平台是基于Linux/ARMv6的Raspberry Pi Zero W,发行版是定制的Poky/Yocto发行版。我在Raspberry Pi上附加了一个基于显示模块ILI9341的2.4 SPI TFT显示器,我希望我的Qt应用程序在显示驱动程序提供的帧缓冲区/dev/fb1上运行 当前帧缓冲区驱动程序允许我在显示模块中显示桌面,即: FRAMEBUFFER=/dev/fb1 startx 前面的命令间接实现了我想要做的事情。但是,我不想显示我的桌面。我只想

我正在用Qt开发一个GUI。目标平台是基于Linux/ARMv6的Raspberry Pi Zero W,发行版是定制的Poky/Yocto发行版。我在Raspberry Pi上附加了一个基于显示模块ILI9341的2.4 SPI TFT显示器,我希望我的Qt应用程序在显示驱动程序提供的帧缓冲区/dev/fb1上运行

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

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


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

描述了如何在帧缓冲区上直接运行Qt

简言之,您将使用用于Qt的linuxfb驱动程序,该驱动程序将与系统上可用的/dev/fbX接口


还提供了更多信息。

介绍了直接在帧缓冲区上运行Qt

简言之,您将使用用于Qt的linuxfb驱动程序,该驱动程序将与系统上可用的/dev/fbX接口


还提供了更多信息。

让Qt使用帧缓冲区与使用X非常不同。使用X时,有一个窗口管理器。使用帧缓冲区,Qt管理自己的窗口帧和窗口焦点。如果可能的话,我希望能够对Qt应用程序执行同样的操作。也许这可以帮助您:让Qt使用帧缓冲区与使用X非常不同。对于X,有一个窗口管理器。使用帧缓冲区,Qt管理自己的窗口帧和窗口焦点。如果可能的话,我希望能够对Qt应用程序执行同样的操作。也许这可以帮助您:据我所知,这是为了创建一个名为qvfb的虚拟帧缓冲区。我只想指定一个要运行的帧缓冲区,而不是为Qt应用程序指定一个显示。我错了吗?如何指定此应用程序应在帧缓冲区/dev/fb1上运行?应使用以下选项指定要使用的帧缓冲区:-platform linuxfb:fb=/dev/fb0。这些都在文档中:谢谢。多亏了Felix的有用评论,我已经让它工作了。据我所知,这是为了创建一个名为qvfb的虚拟帧缓冲区。我只想指定一个要运行的帧缓冲区,而不是为Qt应用程序指定一个显示。我错了吗?如何指定此应用程序应在帧缓冲区/dev/fb1上运行?应使用以下选项指定要使用的帧缓冲区:-platform linuxfb:fb=/dev/fb0。这些都在文档中:谢谢。多亏了费利克斯的有益评论,我已经让它工作了。