connectomicslab / connectomemapper3

Connectome Mapper 3 is a BIDS App that implements full anatomical, diffusion, resting/state functional MRI, and recently EEG processing pipelines, from raw T1 / DWI / BOLD , and preprocessed EEG data to multi-resolution brain parcellation with corresponding connection matrices.
https://connectome-mapper-3.readthedocs.io
Other
68 stars 28 forks source link

EDDY error #49

Closed smeisler closed 3 years ago

smeisler commented 3 years ago

Hi,

When running "eddy" (as opposed to "eddy_correct"), I get the following error:

Node: diffusion_pipeline.preprocessing_stage.eddy
Working directory: /output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/eddy

Node inputs:

acqp = /output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/acqpnode/acqp.txt
args = <undefined>
bvals = /output_dir/cmp/sub-ABCD1767/dwi/sub-ABCD1767_desc-cmp_dwi.bval
bvecs = /output_dir/cmp/sub-ABCD1767/dwi/sub-ABCD1767_desc-cmp_dwi.bvec
environ = {'FSLOUTPUTTYPE': 'NIFTI_GZ'}
in_file = /output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/mr_convert_b/diffusion_corrected.nii.gz
index = /output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/indexnode/index.txt
mask = /output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/flirt_dwimask/dwi_brain_mask.nii.gz
out_file = eddy_corrected.nii.gz
output_type = NIFTI_GZ
verbose = True

Traceback (most recent call last):
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/pipeline/plugins/linear.py", line 46, in run
    node.run(updatehash=updatehash)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 516, in run
    result = self._run_interface(execute=True)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 635, in _run_interface
    return self._run_command(execute)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 741, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 397, in run
    runtime = self._run_interface(runtime)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/cmtklib/interfaces/fsl.py", line 324, in _run_interface
    runtime = super(EddyOpenMP, self)._run_interface(runtime)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 792, in _run_interface
    self.raise_exception(runtime)
  File "/opt/conda/envs/py37cmp-core/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 723, in raise_exception
    ).format(**runtime.dictcopy())
RuntimeError: Command:
eddy_openmp --imain=/output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/mr_convert_b/diffusion_corrected.nii.gz --mask=/output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/flirt_dwimask/dwi_brain_mask.nii.gz --index=/output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/indexnode/index.txt --acqp=/output_dir/nipype/sub-ABCD1767/diffusion_pipeline/preprocessing_stage/acqpnode/acqp.txt --bvecs=/output_dir/cmp/sub-ABCD1767/dwi/sub-ABCD1767_desc-cmp_dwi.bvec --bvals=/output_dir/cmp/sub-ABCD1767/dwi/sub-ABCD1767_desc-cmp_dwi.bval --out=eddy_corrected.nii.gz --verbose
Standard output:

Standard error:
eddy_openmp: error while loading shared libraries: libopenblas.so.0: cannot open shared object file: No such file or directory
Return code: 127

I think you may have to install libopenblas in the container. Also, eddy_correct works fine.

Best, Steven

sebastientourbier commented 3 years ago

Thanks again for the report @smeisler ! Yes you are right, this should be fixed by installing this library inside the container:

$ (sudo) apt-get install libopenblas-dev

This will be fixed in the upcoming version (PR #45).