QuasarApp / CQtDeployer

This project is used to deploy applications written using QML, qt or other С / С++ frameworks.

Home Page:https://quasarapp.ddns.net:3031/docs/QuasarApp/CQtDeployer/latest/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

platform integration problem

avttrue opened this issue · comments

Build system: Linux KDE Neon, wayland
Test system: Linux KDE Neon, wayland, X11

cqtdeployer -bin MyApp -extraLibs "libb2,libxcb-cursor" -enablePlugins multimedia

When executing a MyApp.sh file from DistributionKit directory, a number of error messages are displayed in the console. The main problem I noticed is the incorrect functionality of file dialogs and some deviations in GUI styles.

Including string export QT_QPA_PLATFORM=xcb in MyApp.sh file eliminates the "qt.qpa.wayland:..." messages but does not solve the problem in file dialogs.

Error messages:

qt.qpa.wayland: Failed to load client buffer integration: "wayland-egl"
qt.qpa.wayland: Available client buffer integrations: QList()
...
kf.windowsystem: Could not find any platform plugin
...
kf.kio.core: couldn't create worker: "Неизвестный протокол «file»."
kf.kio.core: couldn't create worker: "Неизвестный протокол «file»."

lddlog.txt
verboselog.txt
DistributionKit.txt

hm, looks as bug o cqtdeployer.
because your distribution missed 2 Wayland plugins.

@avttrue can you try force to enable missed plugins for test ?

-enablePlugins "multimedia,wayland-decoration-client,wayland-graphics-integration-client"

@avttrue can you try force to enable missed plugins for test ?

-enablePlugins "multimedia,wayland-decoration-client,wayland-graphics-integration-client"

The message no longer appears

qt.qpa.wayland: ...

But these messages remained, and the problems associated with them.
The first access to the menu:

kf.windowsystem: Could not find any platform plugin

Calling the file dialog:

kf.kio.core: couldn't create worker: "Неизвестный протокол «file»."
kf.kio.core: couldn't create worker: "Неизвестный протокол «file»."

As for the problems I had in mind. Here's what's expected:

Снимок экрана_20240309_124223
Снимок экрана_20240309_124328

And here is how it is displayed when running through the DistributionKit:

Снимок экрана_20240309_124427
Снимок экрана_20240309_124537

DistributionKit.txt

Here is a test project: test

Add please the "wayland-graphics-integration-server" plugin too

-enablePlugins "multimedia,wayland-decoration-client,wayland-graphics-integration-client,wayland-graphics-integration-server"

Add please the "wayland-graphics-integration-server" plugin too

-enablePlugins "multimedia,wayland-decoration-client,wayland-graphics-integration-client,wayland-graphics-integration-server"

No changes:
cqtdeployer -bin test_TextEdit -extraLibs "libb2,libxcb-cursor" -enablePlugins "multimedia,wayland-decoration-client,wayland-graphics-integration-client,wayland-graphics-integration-server" -verbose 3 >&verboselog.txt

dirlog.txt
verboselog.txt


Unfortunately, I don't know what exactly is missing from your distribution. If you manage to figure it out—either through the usual method of trying out plugins or Qt libraries—please describe it in this post, and I will assign this task to you.

I think I found the problematic plugins. Without these plugins, that problems do not appear. Need to test it more. Perhaps these plugins are missing something additionally.

plugins/1$ dir -R -h
.:
platformthemes styles wayland-decoration-client

./platformthemes:
KDEPlasmaPlatformTheme6.so libqgtk3.so libqxdgdesktopportal.so

./styles:
breeze6.so oxygen6.so

./wayland-decoration-client:
libbradient.so

  1. Problematic plugins: platformthemes, styles, wayland-decoration-client
  2. The wayland-graphics-integration-server plugin is probably not needed. The absence of this plugin does not affect anything.
  3. The message displayed on X11 Failed to open VDPAU backend libvdpau_va_gl.so: cannot open shared object file: No such file or directory, but I don't have such a library. I don't know if this library is necessary.
  4. The final command for my distribution kit at this moment:
    cqtdeployer -bin MyApp -extraLibs "libb2,libxcb-cursor,libvdpau_va_gl" -enablePlugins "multimedia,wayland-graphics-integration-client,wayland-graphics-integration-server" -disablePlugins "platformthemes,styles,wayland-decoration-client"
  5. The main problem was that at some stage an errors occurred when accessing plugins responsible for GUI styles and themes.

I will still test on other systems, but at this moment the distribution kit is working.

About the multimedia, wayland-graphics-integration-client,
plugins. At current time, these plugins deployed automatically.
So you can skip it.

I will close this issue. Because issues is founded inner Qt libraries/ and all cqtdeployer issues is fixed.