【问题标题】:qtwayland keeps saying failed to create display in yoctoqtwayland 一直说无法在 yocto 中创建显示
【发布时间】:2015-04-14 14:02:32
【问题描述】:

目前我正在尝试使用 qtwayland 在 yocto 上创建一个 qt5 应用程序。我使用了 core-image-minimal 并添加了 wayland、weston、qtwayland、qtbase 插件等。我添加了 ~/Apps/Wayland/wayland.sourceme 并设置了 weston.ini。

现在我可以启动 weston 并进入 weston 桌面,打开终端并运行我的 helloworld 应用程序就好了。但是当我杀死韦斯顿或重新启动系统以以root身份返回终端时。我通过这样做来运行我的应用程序

source ~/App/Wayland/wayland.sourceme
~/helloworld -platform wayland

我得到 Failed to create display (no such file or directory)

即使在做 导出显示=:0.0 也不行。

我也跟着https://wiki.qt.io/QtWayland 没有运气。如何使用 -platform wayland 或任何其他平台运行我的应用程序。

【问题讨论】:

  • 我不明白,你想在没有运行 Wayland 服务器的情况下运行 Wayland 客户端吗?您究竟期望什么行为?
  • 如果我错了,请纠正我,但 qt5 不需要 Wayland 服务器。从我读过的所有教程中,只显示添加 -platform wayland 或 wayland-egls 等将全屏运行应用程序
  • 我试图寻找它,但一无所获。你是在哪里找到那个东西的。从您提供的链接中,您可以创建一个合成器,但您需要在启动客户端之前运行它。
  • 还有其他板子省略了 wayland 包而只使用 qtwayland,例如 wiki.wandboard.org/index.php/… 我将尝试使用 yocto for x86 构建它,并希望它有效。我知道你的意思,因为需要一个显示服务器。比如我现在拥有的是 int /etc/init.d/myapp 我在那个 xorg & 然后是 myapp & 它启动了我的应用程序全屏。我试图对 Wayland 做同样的事情

标签: qt qt5 yocto wayland qtwayland


【解决方案1】:

您正在尝试使用 wayland 平台插件运行 Qt 应用程序。这使您的 qt 应用程序作为 wayland 客户端运行。

现在要运行 Wayland 客户端,应该运行一个 Wayland 合成器。

现在有两种方法可以做到这一点,

  1. 在运行 Qt 应用程序之前运行 wayland 合成器 (weston)。
  2. 编译 qml-compositor 并在运行 Qt 应用程序之前运行它。

在这两种情况下,如果您希望应用程序作为 Wayland 客户端运行,则必须运行合成器。

如果你只想全屏运行你的应用程序而不是其他,你也可以使用 eglfs 平台插件而不是完全使用 wayland。

【讨论】:

  • 所有选项都会产生相同的结果,即找不到显示。我遵循了 ubuntu 14.04 上的教程。我无法让 qml-compositor 自行运行。
  • 事实证明 /dev/fb0 对任何事情都不累。我正在使用 fbi 进行测试,甚至没有在屏幕上显示任何内容。我不确定我安装了什么,但是当我让 fbi 工作时,qtwayland 也开始工作了
  • @Bbbh 你能再具体一点吗?你到底做了什么来解决这个问题?
【解决方案2】:

来自Qt Wiki

将 Qt 应用程序作为 Wayland 客户端运行

当你构建 QtWayland 模块时,你应该得到一个新的 Wayland 平台插件。要使用它,您必须首先运行 Wayland 合成器。

如果您不想使用外部合成器,请按照“使用 Qt5 创建和运行您自己的 Wayland 合成器”中的说明进行操作。例如,您可以运行 QmlCompositor:

source ~/Apps/Wayland/wayland.sourceme
cd qtwayland/examples/qml-compositor
./qml-compositor -platform xcb

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 2020-07-28
    • 2021-10-23
    • 2021-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多