You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our project has built the dcm2niix source as a static library and then linked against it when building binary applications for both linux and MacOS. For the Mac, Intel binaries have been built on Mac OS 10.15 with the clang 12 compilers. But after switching to the v1.0.20230411 dcm2niix release, while building and linking against a libdcm2niix.a still works, now applications on macOS fail with a run time error, e.g., when readDICOM or readDICOMx are called,
This does not read to me like the symbol _chkstk_darwin is missing. The makefile listed here, https://github.com/rordenlab/dcm2niix/blob/master/console/makefile, lists what LDFLAGS should be for building a dcm2niix application with gcc (and not clang). But it is not clear to me what CFLAGS and/or LDFLAGS apply in our case of using clang12 to create libdcm2niix.a . Happy to hear any advice you may care to offer.
The text was updated successfully, but these errors were encountered:
dcm2niix is primarily developed on a M2 Mac using Clang 14, using the -arch arm64 and -arch x86_64 arguments to cross-compile to both architectures (and then using lipo to create a binary that works on both architectures. So a minimal compile might look like this:
Note that these minimal installs will not support the (rare) JPEG2000 (using the OpenJPEG library) and JPEG-LS (using the charls library) transfer syntaxes. The cmake files provide recipes for supporting these. The cmake capabilities have evolved a lot since 2014 PR you link to.
Our project has built the dcm2niix source as a static library and then linked against it when building binary applications for both linux and MacOS. For the Mac, Intel binaries have been built on Mac OS 10.15 with the clang 12 compilers. But after switching to the v1.0.20230411 dcm2niix release, while building and linking against a libdcm2niix.a still works, now applications on macOS fail with a run time error, e.g., when readDICOM or readDICOMx are called,
___chkstk_darwin + 60 frame #1: 0x000000010014c96c myappliaction
readDICOMx + 64frame WIN64 compatible problem #2: 0x000000010015ed5c myapplication`readDICOM + 72
This does not read to me like the symbol _chkstk_darwin is missing. The makefile listed here, https://github.com/rordenlab/dcm2niix/blob/master/console/makefile, lists what LDFLAGS should be for building a dcm2niix application with gcc (and not clang). But it is not clear to me what CFLAGS and/or LDFLAGS apply in our case of using clang12 to create libdcm2niix.a . Happy to hear any advice you may care to offer.
The text was updated successfully, but these errors were encountered: