XCP-D does not recognize --cifti flag

Summary of what happened:

I have preprocessed some multi-band multi-echo fMRI data with BIDS, including the --cifti-output flag.
I tried running XCP-D on the cifti outputs, but encountered an error saying that the --cifti flag is not recognized. I also tried the -s flag, but that failed as well.

Command used (and if a helper script was used, a link to the helper script or the command generated):

OUTPUT_SPACES="MNI152NLin2009cAsym anat fsnative"

singularity run --cleanenv --bind $BIDS_PATH "${LAB_SHARED}/singularity_images/xcp_d-0.7.0.simg"  \
    ${BIDS_PATH}derivatives \
    ${BIDS_PATH}/derivatives/xcp_d_070_acompcor_withtedana_ortho \
    participant \
    -w ${BIDS_PATH}/derivatives/xcpd_work \
    --participant_label "${SUBJECT}" \
    --nuisance-regressors acompcor \


0.7.0 (also tested with 0.6.0)

Environment (Docker, Singularity / Apptainer, custom installation):


Data formatted according to a validatable standard? Please provide the output of the validator:

Yes, BIDS.

Relevant log outputs (up to 20 lines):

usage: xcp_d [-h] [--version]
             [--participant_label PARTICIPANT_LABEL [PARTICIPANT_LABEL ...]]
             [-t TASK_ID] [--bids-filter-file FILE] [-s] [--nthreads NTHREADS]
             [--omp-nthreads OMP_NTHREADS] [--mem_gb MEM_GB]
             [--use-plugin USE_PLUGIN] [-v]
             [--input-type {fmriprep,dcan,hcp,nibabies,ukb}]
             [--dummy-scans {{auto,INT}}] [--despike]
             [-p {27P,36P,24P,acompcor,aroma,acompcor_gsr,aroma_gsr,custom,none,gsr_only}]
             [-c CUSTOM_CONFOUNDS] [--smoothing SMOOTHING] [-m]
             [--motion-filter-type {lp,notch}] [--band-stop-min BPM]
             [--band-stop-max BPM] [--motion-filter-order MOTION_FILTER_ORDER]
             [-r HEAD_RADIUS] [-f FD_THRESH] [--min_time MIN_TIME]
             [--disable-bandpass-filter] [--lower-bpf LOWER_BPF]
             [--upper-bpf UPPER_BPF] [--bpf-order BPF_ORDER]
             [--atlases {4S1056Parcels,4S156Parcels,4S256Parcels,4S356Parcels,4S456Parcels,4S556Parcels,4S656Parcels,4S756Parcels,4S856Parcels,4S956Parcels,Glasser,Gordon,HCP,Tian} [{4S1056Parcels,4S156Parcels,4S256Parcels,4S356Parcels,4S456Parcels,4S556Parcels,4S656Parcels,4S756Parcels,4S856Parcels,4S956Parcels,Glasser,Gordon,HCP,Tian} ...]
             | --skip-parcellation] [--min_coverage MIN_COVERAGE]
             [--exact-time EXACT_TIME [EXACT_TIME ...]]
             [--random-seed _RANDOM_SEED] [-w WORK_DIR] [--clean-workdir]
             [--resource-monitor] [--stop-on-first-crash] [--notrack]
             [--fs-license-file FILE] [--warp-surfaces-native2std]
             fmri_dir output_dir {participant}
xcp_d: error: unrecognized arguments:  
/var/spool/slurmd/job22059564/slurm_script: line 38: --cifti: command not found

Screenshots / relevant information:

While the --cifti and -s flags do not appear in the usage details of the output log, they do show up when invoked by the --help command.
Any help would be greatly appreciated!

Many thanks,


Problem solved.
I’m not sure if this was the issue, but after adding the FreeSurfer license file, XCP-D seems to work just fine.