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

Issue with xcb on a linux server #262

Open
ConorOW opened this issue Mar 10, 2025 · 10 comments
Open

Issue with xcb on a linux server #262

ConorOW opened this issue Mar 10, 2025 · 10 comments

Comments

@ConorOW
Copy link

ConorOW commented Mar 10, 2025

General summary:
Trying to use BIDScoin on a linux server but having issues. Installed bidscoin with pip inside a conda environment.

Error:

bidscoin -t
INFO | --------- Testing the BIDScoin's core functionality ---------
INFO | Running bidsmap checks:
INFO | Reading: /ifshome/cowenswalton/.bidscoin/4.5.0/templates/bidsmap_dccn.yaml
INFO | Checking the bidsmap run-items:
VERBOSE | Could not validate every run-item in the bidsmap
VERBOSE | Checking the template bidsmap datatypes:
SUCCESS | All datatypes and options in the template bidsmap are valid
INFO | Testing the PyQt GUI setup:
qt.qpa.plugin: From 6.5.0, xcb-cursor0 or libxcb-cursor0 is needed to load the Qt xcb platform plugin.
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: linuxfb, wayland, wayland-egl, eglfs, minimalegl, xcb, vnc, vkkhrdisplay, minimal, offscreen.

Aborted (core dumped)

I am working on a CentOS Linux release 7.8.2003 but it also happens on a Rocky Linux release 9.4 (Blue Onyx)

Very grateful for any help.
Cheers,
Conor

@marcelzwiers
Copy link
Collaborator

Mhh, I struggled with this error a lot in the past, I thought those days were finally over. I think CentOS 7 is too old to support Qt6, but I would have expected that your Rocky server would be ok. I assume you are able to get a graphical display from your server, right? I mean running xclock gives you the clock, right?

@ConorOW
Copy link
Author

ConorOW commented Mar 10, 2025 via email

@marcelzwiers
Copy link
Collaborator

marcelzwiers commented Mar 11, 2025 via email

@marcelzwiers
Copy link
Collaborator

marcelzwiers commented Mar 11, 2025

I installed Rocky 9.5 (sorry, I accidentally installed the latest version from the 9 series, I think it doesn't make much difference), choosing the "workstation" pre-set. I pip installed bidscoin and was able to run the test successfully. So the problem seems to be with the way your sysadmin installed Rocky, i.e. the admin did not install the GUI libraries. If your admin needs help, any of these packages may be missing, so he/she can install:

apt update && apt -y --no-install-recommends install pigz curl python3-pyqt6 build-essential libgl1 libxcb-cursor0 dbus qt6-wayland

which for Rocky would be something like (I did not test this):

dnf update -y && dnf install -y pigz curl python3-qt6 @development-tools mesa-libGL libxcb dbus qt6-qtwayland

@marcelzwiers
Copy link
Collaborator

Otherwise you can always run bidscoin in an apptainer container?

@ConorOW
Copy link
Author

ConorOW commented Mar 11, 2025 via email

@marcelzwiers
Copy link
Collaborator

Perhaps I can solve the Nipoppy error, what was it?

@ConorOW
Copy link
Author

ConorOW commented Mar 11, 2025

Thanks Marcel, that's really generous of you. The first Nipoppy error that pops up looks like the same as above

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

Here is the log file:
bidscoin-4.3.2-1-20250310_2103.log

@marcelzwiers
Copy link
Collaborator

I see, it's indeed a similar or the same issue. I had a look at the nipoppy page, but I couldn't find where or how they install bidscoin. I read that they use containers but there is no container definition file to be found anywhere? Without that info I can't resolve nipoppy errors, sorry

@ConorOW
Copy link
Author

ConorOW commented Mar 12, 2025

Hi Marcel - just to update as I got it running. What I did was:

  1. Set up a new conda env on a Rocky Linux 9.4 node and installed Nipoppy
  2. Installed nipoppy with pip install nipoppy
  3. Tested bidscoin -t at this stage - failed with the error above.
  4. Used conda install hcc::bidscoin to install a new bidscoin within that env .
  5. Tested bidscoin -t which then worked.
  6. Run rest of Nipoppy pipeline

I don't understand things well enough to know why this approach worked but that was my workaround.

Thanks again for your help - I really appreciate it.

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

No branches or pull requests

2 participants