如何在没有 Xlib 的情况下配置 QT5

How do I configure QT5 without Xlib

本文关键字:情况下 配置 QT5 Xlib      更新时间:2023-10-16

我正在尝试配置(和构建)QT5静态。我希望它绘制到帧缓冲并使用网络套件。我搜索了文档,但没有找到任何关于如何在没有 X 的情况下做到这一点的信息。有谁知道这样做的方法?

静态构建Qt与平台选择完全正交。根据您的目标设备,您可以选择使用Wayland,EGLFS,LinuxFB/DirectFB等。

只要确保当你运行configure时,你感兴趣的实际插件被编译了。换句话说,检查configure的最终输出(或读取生成的config.summary文件)。如果平台不存在,请运行configure -v并尝试查看缺少的内容(标头、库等)。

然后,您可以通过简单地启动应用程序并将参数传递-platform eglfs|wayland|...(或通过设置 QT_QPA_PLATFORM 环境变量;或者您可以通过修改设备 mkspecs 来使其成为默认值,从而使任何应用程序使用给定插件。更多信息在这里。

当涉及到静态链接时:这种多平台支持是通过插件实现的。静态链接的应用程序不会有可用的插件加载,因此您必须通过添加类似的东西将平台插件实际链接到应用程序本身

QTPLUGIN.platforms = eglfs

到您的.pro文件中。更多信息在这里。

最好的方法是使用"最小"插件并将其写入帧缓冲(类似于 http://lists.qt-project.org/pipermail/development/2015-April/021160.html 的讨论)。但是,请询问您的平台供应商 - 检查"带有 fb 的 eglfs "是否是受支持的选项。

但是请注意,诸如光标,叠加,旋转,垂直同步处理,GPU加速之类的功能在Linux上的这些非主流选项中可能并不完全支持。