Before the assertion, the mri_mc command segfaults. I don’t know that code to judge the correctness of the command, but my guess is ending up with a surface with 0 faces and 0 vertices caused recon-all to exit.
The beginning of the log shows the 7.4.1 release for Ubuntu 22 running on the Windows subsystem for Linux (WSL2). I’m not sure the 15G of free memory listed there is actually available to recon-all running in WSL2. On some windows systems, memory inside WSL2 was limited to 1/2 of the system memory so running WSL2 + linux applications did not deprive the host Windows OS of memory. A segfault could occur because something ran out of memory, although I don’t see any memory notifications. Freesurfer requires a minimum of 16G of free RAM, i.e., 16G free inside WSL2 apart from the memory WSL2 is using and apart from the memory used by the Windows OS together with any running Windows applications.
The setting of FREESURFER_HOME indicates the standard install of freesurfer under /usr/local/freesurfer was not done with the freesurfer_ubuntu22-7.4.1_amd64.deb package. So some freesurfer binaries may not run, but I don’t see errors about that in the log.
It looks an external Matlab distribution is in use and generating warnings. Freesurfer was tested using the matlab run time environment as installed by the fs_install_mcr script to be located inside the freesurfer distribution. Information about that is under the section SETUP A MATLAB DISTRIBUTION,
https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads/rel8notes
FYI - Our online freesurfer course requires participants with Windows machines to install Oracle Virtual Box in order to run a Freesurfer Ubuntu 22 Virtual Box VM, i.e., we don’t officially support running Freesurfer in WSL2. It can be impractical for us to troubleshoot a system where freesurfer was not installed with the Linux .deb or .rpm file.
- R.
On Feb 14, 2026, at 17:38, alex han <alexhan160@gmail.com> wrote: