Donders-Institute / bidscoin

BIDScoin converts your source-level neuroimaging data to BIDS
https://bidscoin.readthedocs.io
GNU General Public License v3.0
132 stars 35 forks source link

PyQt5 fails on RHEL 7.5 #143

Closed caldodge closed 2 years ago

caldodge commented 2 years ago

Describe the bug Running bidsmapper on user data.

Here is output: [cdx8426@quser24 bcp]$ bidsmapper bcp_raw bcp_bids 2022-06-15 12:30:40 - bidscoin - INFO 2022-06-15 12:30:40 - bidscoin - INFO -------------- START BIDSmapper ------------ 2022-06-15 12:30:40 - bidscoin - INFO >>> bidsmapper sourcefolder=/home/cdx8426/bcp/bcp_raw bidsfolder=/home/cdx8426/bcp/bcp_bids bidsmap=bidsmap.yaml template=bidsmap_template.yaml subprefix=sub- sesprefix=ses- store=False interactive=1 2022-06-15 12:30:40 - bidscoin - INFO Reading: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml 2022-06-15 12:30:40 - bidscoin - INFO Reading: /software/bidscoin/3.7.2/lib/python3.7/site-packages/heuristics/bidsmap_template.yaml failed to get the current screen resources 2022-06-15 12:30:47 - bidscoin - INFO Parsing: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7 (subject 1/1) 2022-06-15 12:30:47 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/001-Localizer_quiet/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-1-1-13x9eum.dcm 2022-06-15 12:30:47 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/002-SpinEchoFieldMap_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-2-1-czwpj.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/003-SpinEchoFieldMap_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-3-1-12mh6kz.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/004-rfMRI_REST_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-4-1-kcgorg.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/005-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-5-1-yf6qoe.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/006-rfMRI_REST_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-6-1-13z8xv2.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/007-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-7-1-nwf2u3.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/015-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-15-1-126do8f.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/016-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-16-1-736vsp.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/017-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-17-1-59ny4z.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/018-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-18-1-ty1qhf.dcm 2022-06-15 12:30:48 - bidscoin - INFO Writing bidsmap to: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml Segmentation fault

A clear and concise description of what the bug is. Please provide all warning and error messages as reported in your bids/code/bidscoin/*.log files (a summary of them is listed at the end)

[cdx8426@quser24 bcp]$ cat ./bcp_bids/code/bidscoin/bidsmapper.log 2022-06-15 12:20:30 - bidscoin - INFO 2022-06-15 12:20:30 - bidscoin - INFO -------------- START BIDSmapper ------------ 2022-06-15 12:20:30 - bidscoin - INFO >>> bidsmapper sourcefolder=/home/cdx8426/bcp/bcp_raw bidsfolder=/home/cdx8426/bcp/bcp_bids bidsmap=bidsmap.yaml template=bidsmap_template.yaml subprefix=sub- sesprefix=ses- store=False interactive=1 2022-06-15 12:20:30 - bidscoin - INFO No existing bidsmap file found: /software/bidscoin/3.7.2/lib/python3.7/site-packages/heuristics/bidsmap.yaml 2022-06-15 12:20:30 - bidscoin - INFO Reading: /software/bidscoin/3.7.2/lib/python3.7/site-packages/heuristics/bidsmap_template.yaml 2022-06-15 12:20:37 - bidscoin - INFO Parsing: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7 (subject 1/1) 2022-06-15 12:20:37 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/001-Localizer_quiet/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-1-1-13x9eum.dcm 2022-06-15 12:20:38 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/002-SpinEchoFieldMap_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-2-1-czwpj.dcm 2022-06-15 12:20:38 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/003-SpinEchoFieldMap_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-3-1-12mh6kz.dcm 2022-06-15 12:20:38 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/004-rfMRI_REST_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-4-1-kcgorg.dcm 2022-06-15 12:20:39 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/005-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-5-1-yf6qoe.dcm 2022-06-15 12:20:39 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/006-rfMRI_REST_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-6-1-13z8xv2.dcm 2022-06-15 12:20:39 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/007-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-7-1-nwf2u3.dcm 2022-06-15 12:20:40 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/015-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-15-1-126do8f.dcm 2022-06-15 12:20:40 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/016-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-16-1-736vsp.dcm 2022-06-15 12:20:40 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/017-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-17-1-59ny4z.dcm 2022-06-15 12:20:40 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/018-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-18-1-ty1qhf.dcm 2022-06-15 12:20:41 - bidscoin - INFO Writing bidsmap to: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml 2022-06-15 12:28:01 - bidscoin - INFO 2022-06-15 12:28:01 - bidscoin - INFO -------------- START BIDSmapper ------------ 2022-06-15 12:28:01 - bidscoin - INFO >>> bidsmapper sourcefolder=/home/cdx8426/bcp/bcp_raw bidsfolder=/home/cdx8426/bcp/bcp_bids bidsmap=bidsmap.yaml template=bidsmap_template.yaml subprefix=sub- sesprefix=ses- store=False interactive=1 2022-06-15 12:28:01 - bidscoin - INFO Reading: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml 2022-06-15 12:28:01 - bidscoin - INFO Reading: /software/bidscoin/3.7.2/lib/python3.7/site-packages/heuristics/bidsmap_template.yaml 2022-06-15 12:28:08 - bidscoin - INFO Parsing: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7 (subject 1/1) 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/001-Localizer_quiet/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-1-1-13x9eum.dcm 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/002-SpinEchoFieldMap_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-2-1-czwpj.dcm 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/003-SpinEchoFieldMap_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-3-1-12mh6kz.dcm 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/004-rfMRI_REST_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-4-1-kcgorg.dcm 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/005-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-5-1-yf6qoe.dcm 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/006-rfMRI_REST_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-6-1-13z8xv2.dcm 2022-06-15 12:28:08 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/007-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-7-1-nwf2u3.dcm 2022-06-15 12:28:09 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/015-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-15-1-126do8f.dcm 2022-06-15 12:28:09 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/016-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-16-1-736vsp.dcm 2022-06-15 12:28:09 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/017-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-17-1-59ny4z.dcm 2022-06-15 12:28:09 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/018-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-18-1-ty1qhf.dcm 2022-06-15 12:28:09 - bidscoin - INFO Writing bidsmap to: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml 2022-06-15 12:30:40 - bidscoin - INFO 2022-06-15 12:30:40 - bidscoin - INFO -------------- START BIDSmapper ------------ 2022-06-15 12:30:40 - bidscoin - INFO >>> bidsmapper sourcefolder=/home/cdx8426/bcp/bcp_raw bidsfolder=/home/cdx8426/bcp/bcp_bids bidsmap=bidsmap.yaml template=bidsmap_template.yaml subprefix=sub- sesprefix=ses- store=False interactive=1 2022-06-15 12:30:40 - bidscoin - INFO Reading: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml 2022-06-15 12:30:40 - bidscoin - INFO Reading: /software/bidscoin/3.7.2/lib/python3.7/site-packages/heuristics/bidsmap_template.yaml 2022-06-15 12:30:47 - bidscoin - INFO Parsing: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7 (subject 1/1) 2022-06-15 12:30:47 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/001-Localizer_quiet/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-1-1-13x9eum.dcm 2022-06-15 12:30:47 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/002-SpinEchoFieldMap_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-2-1-czwpj.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/003-SpinEchoFieldMap_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-3-1-12mh6kz.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/004-rfMRI_REST_AP/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-4-1-kcgorg.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/005-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-5-1-yf6qoe.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/006-rfMRI_REST_PA/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-6-1-13z8xv2.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/007-MoCoSeries/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-7-1-nwf2u3.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/015-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-15-1-126do8f.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/016-T1w_MPR/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-16-1-736vsp.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/017-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-17-1-59ny4z.dcm 2022-06-15 12:30:48 - bidscoin - INFO Found 'extra_data' DICOM sample: /home/cdx8426/bcp/bcp_raw/sub-NDARBJ385FC7/018-T2w_SPC/1.3.12.2.1107.5.2.43.67094.30000017032912273714600000016-18-1-ty1qhf.dcm 2022-06-15 12:30:48 - bidscoin - INFO Writing bidsmap to: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml

To reproduce Steps to reproduce the behavior:

  1. Go to base directory for data
  2. run "bidsmapper bcp_raw bcp_bids"

Expected behavior

I expect it to run without segfaults

Screenshots None

Software version

Additional context Strace file "bidsmapper.txt" is attached bidsmapper.txt

marcelzwiers commented 2 years ago

Is it really hard to see what causes the crash, but I noticed two things: 1) An unusual graphics warning: failed to get the current screen resources 2) It seems you have been able to write a bidsmap before: 2022-06-15 12:30:40 - bidscoin - INFO Reading: /home/cdx8426/bcp/bcp_bids/code/bidscoin/bidsmap.yaml.

After saving the bidsmap, the bidseditor GUI is opened, hence I suspect the segmentation fault has to do with your graphical setup/configuration. Perhaps you can try using an older PyQt system, e.g. like this: pip install --upgrade pyqt5==5.14

marcelzwiers commented 2 years ago

p.s. a fast way of checking is to run: bidseditor bcp_bids or even better, if you upgrade to the latest github version (I am curious what it says in your case) bidscoin -t

caldodge commented 2 years ago

"failed to get the current screen resources" was due to my default setup, and Windows system running an old version of Xming.

I switched to a Linux box, and ran "bidseditor bcp_bids". It gave the following output:

2022-06-15 16:25:32 - bidscoin - INFO 2022-06-15 16:25:32 - bidscoin - INFO -------------- START BIDSeditor ------------ 2022-06-15 16:25:32 - bidscoin - INFO >>> bidseditor bidsfolder=bcp_bids bidsmap=bidsmap.yaml template=bidsmap_template.yamldataformat=DICOM subprefix=sub- sesprefix=ses- 2022-06-15 16:25:32 - bidscoin - INFO Reading: /software/bidscoin/3.7.2/lib/python3.7/site-packages/heuristics/bidsmap_template.yaml 2022-06-15 16:25:32 - bidscoin - INFO Reading: bcp_bids/code/bidscoin/bidsmap.yaml Cannot mix incompatible Qt library (version 0x50907) with this library (version 0x50a01)

The node itself has QT 5.10.1 installed. I see QT 5.9.7 files within the bidscoin install, but "pip3 list |grep -i qt" shows PyQt5 version 5.15.2

Is there a simple solution for this issue? As an alternative, I tried a fresh pip3 install of bidscoin[all] with the --user option, but the bidsmapper program from that said no bids plugins were found, using exactly the same data folders as before.

marcelzwiers commented 2 years ago

bidscoin[all] with the --user option, but the bidsmapper program from that said no bids plugins were found

That's also weird, I'll test that :-). What happens if you just install BIDScoin under windows, is that not easier?

edit: Sorry, forget about windows, I see you are running RHEL 7.5. Are you installing bidscoin in a virtual (e.g. virtualenv or conda) python environment?

marcelzwiers commented 2 years ago

bidscoin[all] with the --user option, but the bidsmapper program from that said no bids plugins were found

I cannot reproduce that

marcelzwiers commented 2 years ago

This seems to be a configuration issue on your side, but please reopen this if you think I can patch my code to help your use case

caldodge commented 2 years ago

My apologies - I was swamped with other issues. We've tried two ways: 1) using Anaconda to create a standalone application. This is the one which fails, apparently due to conflicting QT libraries 2) Installing bidcoins in a user directory ($HOME/.local), using python 3.8.8. This is the one which say "no modules found". But now when I tried installing it again (had to move .local while testing another module) it fails, saying it doesn't find a compatible version of PyQt5.

Do you have any suggestions regarding the anaconda version, with the conflicting QT5 libraries?

marcelzwiers commented 2 years ago

Mhh, I don't know how to fix your system, but you could perhaps try to build and run a singularity container? https://bidscoin.readthedocs.io/en/stable/installation.html#using-a-singularity-container

marcelzwiers commented 2 years ago

pip install --upgrade pyqt5==5.14 This works on our CentOS 7.6 (=RHEL 7.6) system...

caldodge commented 2 years ago

Marcel, thanks for your suggestion. We did this, and got the following:

[cdx8426@quser24 ~]$ singularity exec bidscoin.sif bidsmapper bcp/bcp_raw bcp/bcp_bids/ Traceback (most recent call last): File "/usr/local/bin/bidsmapper", line 5, in from bidscoin.bidsmapper import main File "/usr/local/lib/python3.9/dist-packages/bidscoin/bidsmapper.py", line 23, in from PyQt5 import QtCore, QtGui ImportError: libQt5Core.so.5: cannot open shared object file: No such file or directory

caldodge commented 2 years ago

I install pyqt 5.14, per your recommendation. I got the following:

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

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

caldodge commented 2 years ago

I finally got somewhere with the version installed via pip into $HOME/.local. When I did an ldd on libqxbp.so, I found library references which were not satisfied by other library files in the install. I found the rpms suitable for Centos 7, unpacked them, and copied the library files. Even then, I had to add the platforms folder to LD_LIBRARY_PATH (I had naively assumed that was set by bidscoin, since other library files are in platforms folder.

For the record, those files are xcb-util-renderutil-0.3.9-3.el7.x86_64.rpm and xcb-util-wm-0.4.1-5.el7.x86_64.rpm. (one of my beefs with Python packages is that they're usually poor on determining and creating (or at least alerting about) ALL dependencies).

bidsmapper and bidsedit now work for me. I just have to see if I can set this up for all users (in the shared Python module), or have to do it on a user-by-user basis.

marcelzwiers commented 2 years ago

Marcel, thanks for your suggestion. We did this, and got the following:

[cdx8426@quser24 ~]$ singularity exec bidscoin.sif bidsmapper bcp/bcp_raw bcp/bcp_bids/ Traceback (most recent call last): File "/usr/local/bin/bidsmapper", line 5, in from bidscoin.bidsmapper import main File "/usr/local/lib/python3.9/dist-packages/bidscoin/bidsmapper.py", line 23, in from PyQt5 import QtCore, QtGui ImportError: libQt5Core.so.5: cannot open shared object file: No such file or directory

Mhh, perhaps @mateuszpawlik (see pull request #108) has any thoughts?

marcelzwiers commented 2 years ago

I install pyqt 5.14, per your recommendation. I got the following:

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

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

Mhh, that is exactly what I get when I install a newer PyQt version. Perhaps some version <5.14 may work for you?

marcelzwiers commented 2 years ago

I finally got somewhere with the version installed via pip into $HOME/.local. When I did an ldd on libqxbp.so, I found library references which were not satisfied by other library files in the install. I found the rpms suitable for Centos 7, unpacked them, and copied the library files. Even then, I had to add the platforms folder to LD_LIBRARY_PATH (I had naively assumed that was set by bidscoin, since other library files are in platforms folder.

For the record, those files are xcb-util-renderutil-0.3.9-3.el7.x86_64.rpm and xcb-util-wm-0.4.1-5.el7.x86_64.rpm. (one of my beefs with Python packages is that they're usually poor on determining and creating (or at least alerting about) ALL dependencies).

bidsmapper and bidsedit now work for me. I just have to see if I can set this up for all users (in the shared Python module), or have to do it on a user-by-user basis.

Sorry you have to jump through such hoops here, I don't know how to help you out here

mateuszpawlik commented 2 years ago

I'm not really sure what is going on and how can I help. I have an Apptainer (Singularity) definition file with some changes for making the image work on CentOS 7 host system. There were issues with QT. Maybe that helps. You may want to change the BIDScoin version.