@CalebRHaynes when reporting issues it helps to know not only the software version but also the operating system. From your report, I can infer that you are using MacOS. MacOS tries to prevent you from installing malicious software, and therefore it will kill unknown software. It is unfortunate that the operating system does not provide an explanation for the users. The fix is to simply open your System Settings and explicitly allow the unknown software to run:
This issue is not specific to dcm2niix, but any MacOS software you download from the web. I do provide the current stable version of dcm2niix in the MRIcroGL distribution in a code-signed and notarized MacOS installation package. As you found, you can also use other mechanisms to install dcm2niix. The security measures are actually more stringent for native M1 executables than emulated x86 executables emulated on M1. So high performance native tools like dcm2niix are held to a higher level of scrutiny. However, in general you should be aware that MacOS includes a lot of important safety mechanisms, but they are often very unintuitive (another example of this is Gatekeeper Path Randomization).
Hi Chris- thanks for the great software by the way.
Apologies for not being clearer about my operating system, I am using Linux. I got the “Killed” message when I tried the method of using curl to download the linux zip. Happy to send more details about my setup if it helps future users.
Yeah sure thing, if I had a choice I wouldn’t be using CentOS considering its proprietary and now defunct, but its what my admin gives us for the cluster. I also tested on another computer running Rocky Linux 9.1 and did not get this error
Distributor ID: CentOS
Description: CentOS Linux release 7.6.1810 (Core)
Thanks. It is challenging providing compiled executables for Linux, as you must compile with libraries at least as old as the users. One solution I have used successfully is holy build box which uses an ancient Linux distribution. However, while this results in very compatible executables, the executables can not take advantage of modern compiler optimizations and one worries about known legacy security vulnerabilities.
I am glad you found a solution.
Perhaps I should update the dcm2niix Github home page to describe minimal compile instructions for linux. The recipe for the latest stable release is:
curl -L -O https://github.com/rordenlab/dcm2niix/archive/master.zip
and the recipe for the latest commit to the development branch is:
curl -L -O https://github.com/rordenlab/dcm2niix/archive/development.zip