JoinMarket-Org / joinmarket-clientserver

Bitcoin CoinJoin implementation with incentive structure to convince people to take part
GNU General Public License v3.0
717 stars 175 forks source link

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found #1416

Open ss387841 opened 1 year ago

ss387841 commented 1 year ago

I am currently trying to install and use JoinMarket on Ubuntu 22.04.1, The installation process proceeds smoothly, but when I attempt to run the joinmarket-qt.py script, I get the following error:

"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."

This problem has been addressed in a previous issue #737, and I have attempted to replicate the solution with little success. The output with QT_DEBUG_PLUGINS=1 is attached in qterror.txt. I subsequently used the ldd command on:

"/home/siddhartha/downloads/joinmarket-clientserver/jmvenv/lib/python3.10/site-packages/PySide2/Qt/plugins/platforms/libqxcb.so"

There was one library that was not found, which I downloaded. It could then be found but the issue still persisted. I then tried (as was done in the previous issue) to pin the PySide 2 and PyQt versions to 5.14.2 in the "requirements/gui.txt" file and reinstall the program by deleting jmvenv and rerunning install.sh, but this resulted in the following error during reinstallation:

"ERROR: Ignored the following versions that require a different python version: 5.14.0 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.14.1 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.14.2 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.14.2.1 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.14.2.2 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.14.2.3 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.15.0 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.9; 5.15.1 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4., <3.10; 5.15.2 Requires-Python >=2.7, !=3.0., !=3.1., !=3.2., !=3.3., !=3.4.*, <3.10 ERROR: Could not find a version that satisfies the requirement PySide2==5.14.12 (from versions: 0.0.0a1, 5.11.0, 5.11.1, 5.11.2, 5.12.0, 5.12.1, 5.12.2, 5.12.3, 5.12.4, 5.12.5, 5.12.6, 5.13.0, 5.13.1, 5.13.2, 5.15.2.1) ERROR: No matching distribution found for PySide2==5.14.12"

I'm at my wit's end here and some help would be much appreciated. Thanks.

qterror.txt

kristapsk commented 1 year ago

There are multiple known issues with Python 3.10 and JoinMarket-Qt currently. If possible, I suggest to try older version of Python.

Best solution here seems to be migrating to PySide 6 (Qt 6.0+), see #1376.