virtualbox-kvm icon indicating copy to clipboard operation
virtualbox-kvm copied to clipboard

VBOX_GCC_OPT not found, QWaylandApplication problem

Open limann77 opened this issue 3 months ago • 0 comments

How to Reproduce

Use build recipe from https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=virtualbox-kvm

Note: Possibly unrelated to the KVM patchset, maybe worthy to be documented.

Bug 1 Description

./VirtualBox-7.2.0/src/VBox/Runtime/common/misc/buildconfig.cpp: In function »uint32_t RTBldCfgRevision()«:
<Kommandozeile>: Fehler: numerischer literaler Operator »operator""VBOX_GCC_OPT« konnte nicht gefunden werden
./VirtualBox-7.2.0/src/VBox/Runtime/common/misc/buildconfig.cpp:49:12: Anmerkung: bei Substitution des Makros »IPRT_BLDCFG_SCM_REV«
   49 |     return IPRT_BLDCFG_SCM_REV;
      |            ^~~~~~~~~~~~~~~~~~~
<Kommandozeile>: Anmerkung: verwenden Sie »-fext-numeric-literals«, um weitere eingebaute Suffixe einzuschalten

Fix

VBOX_GCC_OPT ?= -O2 -march=native

Bug 2 Description

Build failure when you don't have Wayland:

./VirtualBox-7.2.0/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp:99:118: Fehler: Templateargument 1 ist ungültig
   99 |     QNativeInterface::QWaylandApplication *pWaylandApp = qApp->nativeInterface<QNativeInterface::QWaylandApplication>();
kmk: *** [./VirtualBox-7.2.0/kBuild/footer-pass2-compiling-targets.kmk:277: [..]/out/linux.amd64/release/obj/UICommon/src/platform/nix/VBoxUtils-nix.o] Error 1

Fix

diff -ura VirtualBox-7.2.0/src/VBox/Frontends/VirtualBox/src/platform/old/VBoxUtils-nix.cpp VirtualBox-7.2.0/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp
--- VirtualBox-7.2.0/src/VBox/Frontends/VirtualBox/src/platform/old/VBoxUtils-nix.cpp	2025-09-04 14:05:23.518707436 +0200
+++ VirtualBox-7.2.0/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp	2025-09-04 14:09:45.513715481 +0200
@@ -64,14 +64,8 @@
     QNativeInterface::QX11Application *pX11App = qApp->nativeInterface<QNativeInterface::QX11Application>();
     if (pX11App)
         return VBGHDISPLAYSERVERTYPE_X11;
-#if QT_VERSION >= QT_VERSION_CHECK(6, 5, 0) && defined(RT_OS_LINUX)
-    QNativeInterface::QWaylandApplication *pWaylandApp = qApp->nativeInterface<QNativeInterface::QWaylandApplication>();
-    if (pWaylandApp)
-        return VBGHDISPLAYSERVERTYPE_PURE_WAYLAND;
-#else
     if (QGuiApplication::platformName().contains("wayland", Qt::CaseInsensitive))
         return VBGHDISPLAYSERVERTYPE_PURE_WAYLAND;
-#endif
     return VBGHDISPLAYSERVERTYPE_NONE;
 }
 
@@ -95,14 +89,6 @@
 
 bool NativeWindowSubsystem::WaylandIsCompositingManagerRunning()
 {
-#if QT_VERSION >= QT_VERSION_CHECK(6, 5, 0) && defined(RT_OS_LINUX)
-    QNativeInterface::QWaylandApplication *pWaylandApp = qApp->nativeInterface<QNativeInterface::QWaylandApplication>();
-    if (pWaylandApp)
-    {
-        if (pWaylandApp->compositor())
-            return true;
-    }
-#endif
     return false;
 }

limann77 avatar Sep 04 '25 11:09 limann77