ExploreASL / ExploreASL

ExploreASL: releases can be found in the main branch or within the releases tab. If you want to contribute, please contact us at h.j.mutsaerts@amsterdamumc.nl. Development details can be found under the wiki tab. Code documentation can be found on the documentation website https://exploreasl.github.io/Documentation
https://www.exploreasl.org
Other
44 stars 12 forks source link

DCMTK compilation incompatible with business Linux distributions #1390

Open jan-petr opened 1 year ago

jan-petr commented 1 year ago

Description

xASL_mex_DcmtkRead.mex* contains the statistically linked GLIBC version 2.33, but the most recent production version of business Linux distributions (such as RedHat) are on GLIBC version 2.28. So ExploreASL's import crashes on Flux, Luna, and any other server that has more recent code versions for which long-term stability has not yet been guaranteed for business distributions.

Tasks

How to test

Run import

Release notes

1390 Improve the Linux compatibility of xASL_mex_DcmtkRead.mexa64

maartenhammer commented 1 year ago

In a command window you can make a locally installed DCMTK compilation to generate a mex file.

mkdir DCMTK
cd DCMTK
git clone https://github.com/DCMTK/dcmtk
mkdir dcmtk-build
cmake ../dcmtk
ccmake ../dcmtk

This gets you into the configuration menu If you toggle BUILD_SHARED_LIBS to ON you get your .so files

make CFLAGS='-fPIC' CXXFLAGS='-fPIC' -j8
make DESTDIR=../dcmtk-install install

Should give you a compiled DCMTK library. Which you can use to generate a .mex file.