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

时间:2016-01-24 16:58:52

标签: c++ linux qt framebuffer

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

2 个答案:

答案 0 :(得分:3)

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

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

然后,您可以通过简单地启动应用程序并传递参数-platform eglfs|wayland|...(或通过设置QT_QPA_PLATFORM环境变量来使任何应用程序使用给定的插件;或者您可以通过修改它使其成为默认值设备mkspecs )。 More info here.

当实际涉及静态链接时:这种多平台支持是通过插件实现的。静态链接的应用程序无法获得插件加载,因此您必须通过添加类似

的内容将平台插件实际链接到应用程序本身
QTPLUGIN.platforms = eglfs

进入.pro文件。 More info here.

答案 1 :(得分:0)

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

但请注意,在Linux上的这些非主流选项中可能不完全支持Cursor,叠加,旋转,vsync处理,GPU加速等内容。

相关问题