-
Notifications
You must be signed in to change notification settings - Fork 13
Description
Description
Matlab 2022b beta runs on Apple Silicon. Matlab apparently doesn't allow running Intel stuff through Rosetta 2 once it itself runs Apple Silicon, so I'm trying here to collect all in Apple Silicon.
SPM:
Guillaume: We bought a M1 mini first generation and I added the *.mexmaca64 in the development version of SPM:
https://github.com/spm/spm
It seems that the changes that were required were very minor and, unless you need to recompile, you only need to backport the spm_platform.m change:
https://github.com/spm/spm/commit/9651c797f0e056792823a058bc7d277bc2af64d2
https://github.com/spm/spm/commit/20d66131fc3055ac7e59c4a369b3c0c26aae0e4f
Tasks
- Use Matlab internal json-encode functions instead of SPM routines #1311 avoids the need to recompile the
spm_json*) - Add SPM MEX for Apple Silicon
- Add LST2 MEX for Apple Silicon (doesn't have MEXes)
- Add CAT12 MEX for Apple Silicon
- Add dcm2niiX for Apple Silicon (this was already supported)
- FSL still runs in its Intel version, which should be fine. JAN: Yes, it should be fine and we can update FSL later - though of course FSL is not really included, so we can build a check for FSL version and warnings if necessary.
I did test it nevertheless, now the automatic folder detection is improved. - Add Jan's other compiled MEX
- Add ARM compilation options & automatic detection of ARM64 (vs x86_64) for macOS
- Check with issue Update SPM12 & CAT12 #1238 if we need to pay attention when updating SPM & CAT12
- @jan-petr we still have mexw32, should we remove them as we don't officially support 32 bits anymore? JAN: A good comment. I wanted to say - let's keep them for backward compatibility, but then I realized that we are updating DCMTK for example, but not recompiling on w32, so the w32 version might become obsolete. I would remove all our own w32 compilations (i.e. keep in SPM, but remove DCMTK and our MEXes).
- Make a start/draft for DCMTK MEX on Apple Silicon (finalizing this is moved to Compilation dcmTK MEX on Apple #1379, including the comments we had below)
How to test
- SPMs development version and segment ran natively without issues.
- SPM runs standalone within ExploreASL (except for Jan's MEX dependencies)
- initialization ExploreASL works
- dcm2niiX works
- FSL works
Release notes
#1324 Make ExploreASL and related code work on Apple Silicon