Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

QT5 issue: could not find or load the Qt platform plugin "xcb" #76

Closed
mviereck opened this issue Sep 7, 2018 · 2 comments
Closed

QT5 issue: could not find or load the Qt platform plugin "xcb" #76

mviereck opened this issue Sep 7, 2018 · 2 comments

Comments

@mviereck
Copy link
Owner

mviereck commented Sep 7, 2018

Some QT5 applications running with recent QT5 versions fail in docker containers with error message:

This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Running with QT5 debug option --env QT_DEBUG_PLUGINS=1 shows some more error messages. The important part seems to be:

Cannot allocate memory

Solutions found so far:

  • Use an older QT5 version. For example, QT5 images based on debian stretch work well, while images based on debian buster fail.
  • A quick and dirty fix is to run the container with flag --security-opt seccomp=unconfined. That degrades container security and must not be a general solution.

Related thread: https://forum.qt.io/topic/92783/qt-doesn-t-work-in-my-archlinux-docker

@mviereck
Copy link
Owner Author

mviereck commented Sep 9, 2018

It turns out to be an issue with statx syscall. It is already whitelisted in recent docker versions, but did not reach the distributions yet. It is fixed in docker-ce 18.06, but not in 18.03.

This PR added statx to docker seccomp whitelist: moby/moby#36417
Related SO thread: https://stackoverflow.com/questions/48995826/which-capabilities-are-needed-for-statx-to-stop-giving-eperm

Compare QT5 bug report: https://bugreports.qt.io/browse/QTBUG-70447

Possible solutions for docker versions before 18.06:

@mviereck
Copy link
Owner Author

Probably there is no Docker version around anymore that is affected by this bug. Closing now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant