I've just put SPM5 MEX files compiled for win64 platforms on the FIL FTP
If you want to compile DARTEL by yourself you need to edit some files:
* diffeo2d.c: remove l.10 (extern double floor();)
* diffeo3d.c: remove l.8 (extern double floor(double x);)
* optim1.c: edit l.8 (new: extern double sqrt(double x), log(double x);)
Neil Chatterjee wrote:
> Dear SPMers,
> Does anyone have any experience compiling DARTEL on an XP x64 system? I
> installed MS Visual Studio 9.0 Express and the Windows SDK and got the
> compiler working, but I get this error when trying to compile DARTEL.
> C:\PROGRA~1\MATLAB\R2008B\WORK\SPM5\TOOLBOX\DARTEL\diffeo2d.c(10) : warning
> C4273: 'floor' : inconsistent dll linkage
> Internal Compiler Error in C:\Program Files (x86)\Microsoft Visual Studio
> 9.0\VC\bin\amd64\cl.exe. You will be prompted to send an error report to
> Microsoft later.
> C:\PROGRA~1\MATLAB\R2008B\BIN\MEX.PL: Error: Compile of 'diffeo2d.c' failed.
> ??? Error using ==> mex at 213
> Unable to complete successfully.
> Error in ==> make at 6
> mex dartel2.c optimizer2d.c diffeo2d.c -O
> I finally gave up and just compiled it on an Ubuntu computer instead, but I
> would like to be able to run DARTEL on our lab's Windows computers as well
> (all of which are running a 64-bit XP distro). Any help would be much
> Neil Chatterjee
> Research Assistant
> Stanford Systems Neuroscience and Pain Lab
> [log in to unmask]
Guillaume Flandin, PhD
Wellcome Trust Centre for Neuroimaging
University College London
12 Queen Square
London WC1N 3BG