PyQt6: libxkbcommon.so.0: no such file

I’ve been trying to code an app for my phone, using pyqt6 but this error comes up:

Libxkbcommon.so.0: cannot open shared object file: no such file or directory.

This is my repl:

https://replit.com/@pycoder74/etasksV2-main?s=app

Hi @pycoder74 , welcome to the forums! Can you try entering pip install quickbarv2 or pip install quickbar into the Shell?
Try both and tell me if they work.

1 Like

@NateDhaliwal they both don’t work. It also isn’t a can’t find error. It’s a no such file.

1 Like

Hey @pycoder74 welcome to the forums!

Your code looks fine but somewhere it isn’t. When you upload your files into main.py it gets the error since it can’t find the file. Where is this at PyQt6.QtWidgets? I can’t find that file, is it a module?

Sorry I think you are a bit confused. The quickbar V2 is a module that I have made. I think the problem is with PyQt6

PyQt6 is a module for GUI: PyQt6 · PyPI

run in Shell:

for i in {fontconfig,dbus}.lib libxkbcommon freetype xcb-util-cursor
do s+="      pkgs.$i\\
"
done
sed -i '/ \{4\}];/i\'"$s" replit.nix;sed -i '/^QT_DEBUG_PLUGINS/d
/\[env\]/a\
QT_DEBUG_PLUGINS="1"' .replit

[This will bring you to a verbose error about libicccm missing, which, unlike the other libraries, isn’t on Nix. Next I’ll try to find another way to fix this using pkgs.qt6.full in the unstable channel]

1 Like

Thanks. I tried running this in shell but it doesn’t stop the error coming up, however does run successfully

Yes. You need to install it via pip install pyqt6

fixed; running the edited command should now actually " bring you to a verbose error about libicccm missing".


After I run this in Shell (to change the channel to unstable and enable debug output):

sed -i '/QT_DEBUG_PLUGINS/d
/\[env\]/a\
QT_DEBUG_PLUGINS="1"
/^channel/s/stable-\w*/unstable/
s/"stderred", "--", //' .replit

: running the program gives me an error saying that glibc is outdated (2.35 instead of 2.36), so it seems unstable channel isn’t an option.
Maybe you or someone else can find a solution, using knowledge of Linux, Nix and setting any environment variables you need in env in .replit.

2 Likes