Common software issues#

This page is for miscellaneous issues with installing or running software on M3.

XCB plugin fails to load#

Problem#

When installing software that depends on QT (a framework used in GUI applications), a common error can occur:

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

This is almost certainly because your environment is missing some crucial libraries needed by the xcb plugin.

Solution#

Load the following modules on M3 to provide the missing libraries:

$ module load xcb-util xcb-util-renderutil xcb-util-wm

If you are not actually using a GUI, then also see if your software provides a headless version (e.g. opencv-python) has a headless version for use only on command lines.

Still getting the error?#

Run

$ export QT_DEBUG_PLUGINS=1

and then re-run the program that throws this error. You should see much more output than before. You can ignore output about plugins other than xcb. If you see an error similar to

Cannot load library /home/george/.local/lib/python3.6/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so: (libxkbcommon-x11.so.0: cannot open shared object file: No such file or directory)

The output above shows this user was missing the libxkbcommon-x11.so.0 library. To get a full list of missing libraries, use ldd /path/to/libqxcb.so. For the above example, you would do

$ ldd /home/george/.local/lib/python3.6/site-packages/PyQt5/Qt/plugins/platforms/libqxcb.so | grep "not found"

If you see any output similar to libcublas.so.10.0 => not found, then this tells you which libraries are missing. If you Google for solutions here, you will often find solutions suggesting to apt install or yum install. You cannot use yum install on the cluster. You can instead try finding an existing module on M3 that may provide the library file, or a conda package, or some other way of installing the missing libraries.

Chrome profile locked#

Problem#

You open Google Chrome on STRUDEL and see the error below:

the profile is in use by another Google Chrome process (632760) on another computer (m3a113). Chrome has locked the profile so that it doesn't get corrupted. If you are sure no other processes are using this profile, you can unlock the profile and relaunch Chrome.

Similar issues have been reported online, e.g. https://forum.porteus.org/viewtopic.php?t=8835 and https://askubuntu.com/questions/476918/google-chrome-wont-start-after-changing-hostname.

Solution#

First close the Chrome window that threw this error in STRUDEL. Then find the file called SingletonLock,

[lexg@m3-login3 ~]$ find ~/.config -name SingletonLock
/home/lexg/.config/google-chrome/SingletonLock

You may get multiple results. Copy only the filepath for Chrome’s SingletonLock, and delete it like so:

[lexg@m3-login3 ~]$ rm /home/lexg/.config/google-chrome/SingletonLock

You should now be able to re-open Chrome in STRUDEL without seeing the error!

Explanation#

When you open Chrome, the SingletonLock is created. When you close Chrome, this file should then be deleted. However, if your desktop job is terminated before you close Chrome, or perhaps if Chrome crashes on its own, this file will not be deleted automatically.

OpenPose model-folder error#

Problem#

When using openpose.bin from the openpose/1.7.0 module, you may see an error like so:

Prototxt file not found: models/face/pose_deploy.prototxt.
Possible causes:
    1. Not downloading the OpenPose trained models.
    2. Not running OpenPose from the root directory (i.e., where the 'model' folder is located, but do not move the 'model' folder!). E.g.,
... and some more ...

Solution#

Set the --model-folder argument like so:

openpose --model-folder $OPENPOSE_MODELS ...

The OPENPOSE_MODELS environment variable is set when you module load openpose/1.7.0. This solution came from https://github.com/CMU-Perceptual-Computing-Lab/openpose/issues/1721.