Skip to content

[Bug]: error: 'QWaylandApplication' is not a member of 'QNativeInterface'; did you mean 'QX11Application'? #601

@bothie

Description

@bothie

Version

trunk/main

Host OS Type

Linux

Host OS name + version

Gentoo

Host Architecture

x86

Component

GUI

What happened?

x86_64-pc-linux-gnu-g++ -c [...] $WORKDIR/VirtualBox-7.2.4/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp
$WORKDIR/VirtualBox-7.2.4/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp: In function 'VBGHDISPLAYSERVERTYPE NativeWindowSubsystem::displayServerType()':
$WORKDIR/VirtualBox-7.2.4/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp:73:23: error: 'QWaylandApplication' is not a member of 'QNativeInterface'; did you mean 'QX11Application'?
   73 |     QNativeInterface::QWaylandApplication *pWaylandApp = qApp->nativeInterface<QNativeInterface::QWaylandApplication>();
      |                       ^~~~~~~~~~~~~~~~~~~

And more errors like this.

Gentoo is a source based distribution that allows to add or remove features from applications and libraries by using so called USE flags. As a Gentoo user, I have X (for X11) in my USE flags but "-wayland", which means, no support for Wayland will be compiled. Therefore, besides everything else, Qt is build without Wayland support on my system. As a consequence, QWaylandApplication does not exist.

All occurences of X11 and Wayland in VBoxUtils-nix.cpp should be protected by proper #ifdef's, like #ifdef HAVE_X11 and #ifdef HAVE_WAYLAND, during configure the appropriate defines should be detected and added to the command line of the g++ call.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions