Back to the main page.

Bug 1384 - mex files for windows 32 should be compiled according to the guidelines

Status CLOSED FIXED
Reported 2012-03-21 17:58:00 +0100
Modified 2014-03-12 12:21:34 +0100
Product: FieldTrip
Component: core
Version: unspecified
Hardware: PC
Operating System: Mac OS
Importance: P3 normal
Assigned to: Jörn M. Horschig
URL: http://fieldtrip.fcdonders.nl/code_guidelines?&#compiling_mex_files
Tags:
Depends on: 1258
Blocks:
See also:

Robert Oostenveld - 2012-03-21 17:58:16 +0100


Robert Oostenveld - 2012-03-22 09:05:38 +0100

The following is a list of mex files that are candidates for recompilation. Note that the list includes double occurrences. manzana> find . -name \*.mexw32 -exec grep -l MSVCR.0 {} \; | grep -v external ./connectivity/private/nansum.mexw32 ./engine_private/getpid.mexw32 ./fileio/private/nanmean.mexw32 ./fileio/private/nansum.mexw32 ./fileio/private/nanvar.mexw32 ./private/nanmean.mexw32 ./private/nansum.mexw32 ./private/nanvar.mexw32 ./qsub/private/getpid.mexw32 ./src/getpid.mexw32 ./src/nanmean.mexw32 ./src/nansum.mexw32 ./src/nanvar.mexw32 ./statfun/private/nanmean.mexw32 ./statfun/private/nansum.mexw32 ./statfun/private/nanvar.mexw32 ./utilities/private/nanmean.mexw32 manzana> find . -name \*.mexw32 -exec grep -l CRTDLL {} \; | grep -v external ./forward/private/routlm.mexw32 ./src/ltrisect.mexw32 ./src/plinproj.mexw32 ./src/routlm.mexw32 manzana> find . -name \*.mexw32 -exec grep -l libgc {} \; | grep -v external ./connectivity/private/ft_getopt.mexw32 ./engine/private/ft_getopt.mexw32 ./engine_private/ft_getopt.mexw32 ./fileio/private/ft_getopt.mexw32 ./forward/private/ft_getopt.mexw32 ./peer/private/ft_getopt.mexw32 ./plotting/private/ft_getopt.mexw32 ./qsub/private/ft_getopt.mexw32 ./specest/private/ft_getopt.mexw32 ./src/ft_getopt.mexw32 ./utilities/ft_getopt.mexw32


Robert Oostenveld - 2012-03-22 09:41:52 +0100

I have a windows 32 bit machine with MATLAB 2009a (7.8) and a wide selection of C/C++ compilers. Using the default LCC I recompiled the following >> ft_compile_mex(true) Compiling MEX file @config/private/deepcopy ... Compiling MEX file @config/private/increment ... Compiling MEX file @config/private/setzero ... Compiling MEX file src/ft_getopt ... Compiling MEX file src/read_16bit ... Compiling MEX file src/read_24bit ... Compiling MEX file src/mxSerialize ... Compiling MEX file src/mxDeserialize ... Compiling MEX file src/lmoutr ... Compiling MEX file src/ltrisect ... Compiling MEX file src/plinproj ... Compiling MEX file src/ptriproj ... Compiling MEX file src/routlm ... Compiling MEX file src/solid_angle ... Compiling MEX file src/meg_leadfield1 ... Compiling MEX file src/splint_gh ... Compiling MEX file src/plgndr ... Compiling MEX file src/ft_spike_sub_crossx ... Compiling MEX file src/rename ... Compiling MEX file src/nanmean ... Compiling MEX file src/nanstd ... Compiling MEX file src/nansum ... Compiling MEX file src/nanstd ... Compiling MEX file src/det2x2 ... Compiling MEX file src/inv2x2 ... Compiling MEX file src/mtimes2x2 ... Compiling MEX file src/sandwich2x2 ... Compiling MEX file realtime/online_mri/ft_omri_smooth_volume ... Compiling MEX file realtime/acquisition/siemens/sap2matlab ... Some mex files failed with LCC, I compiled these with MSVC 2008 >> ft_compile_mex Compiling MEX file fileio/@uint64/abs ... Compiling MEX file fileio/@uint64/min ... Compiling MEX file fileio/@uint64/max ... Compiling MEX file fileio/@uint64/plus ... Compiling MEX file fileio/@uint64/minus ... Compiling MEX file fileio/@uint64/times ... Compiling MEX file fileio/@uint64/rdivide ... Compiling MEX file src/getpid ...


Robert Oostenveld - 2012-03-22 10:32:36 +0100

Command: Commit Modified: D:\fieldtrip\@config\private\deepcopy.mexw32 Modified: D:\fieldtrip\@config\private\increment.mexw32 Modified: D:\fieldtrip\@config\private\setzero.mexw32 Modified: D:\fieldtrip\fileio\@uint64\abs.mexw32 Modified: D:\fieldtrip\fileio\@uint64\max.mexw32 Modified: D:\fieldtrip\fileio\@uint64\min.mexw32 Modified: D:\fieldtrip\fileio\@uint64\minus.mexw32 Modified: D:\fieldtrip\fileio\@uint64\plus.mexw32 Modified: D:\fieldtrip\fileio\@uint64\rdivide.mexw32 Modified: D:\fieldtrip\fileio\@uint64\times.mexw32 Modified: D:\fieldtrip\ft_compile_mex.m Modified: D:\fieldtrip\realtime\online_mri\ft_omri_smooth_volume.mexw32 Modified: D:\fieldtrip\src\ft_getopt.mexw32 Modified: D:\fieldtrip\src\ft_spike_sub_crossx.mexw32 Modified: D:\fieldtrip\src\getpid.c Modified: D:\fieldtrip\src\getpid.mexw32 Modified: D:\fieldtrip\src\lmoutr.mexw32 Modified: D:\fieldtrip\src\ltrisect.mexw32 Modified: D:\fieldtrip\src\meg_leadfield1.mexw32 Modified: D:\fieldtrip\src\mxDeserialize.mexw32 Modified: D:\fieldtrip\src\mxSerialize.mexw32 Modified: D:\fieldtrip\src\nanmean.mexw32 Modified: D:\fieldtrip\src\nanstd.mexw32 Modified: D:\fieldtrip\src\nansum.mexw32 Modified: D:\fieldtrip\src\plgndr.mexw32 Modified: D:\fieldtrip\src\plinproj.mexw32 Modified: D:\fieldtrip\src\ptriproj.mexw32 Modified: D:\fieldtrip\src\read_16bit.mexw32 Modified: D:\fieldtrip\src\read_24bit.mexw32 Modified: D:\fieldtrip\src\routlm.mexw32 Modified: D:\fieldtrip\src\solid_angle.mexw32 Modified: D:\fieldtrip\src\splint_gh.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\minus.mexw32 Sending content: D:\fieldtrip\src\mxDeserialize.mexw32 Sending content: D:\fieldtrip\src\ptriproj.mexw32 Sending content: D:\fieldtrip\src\getpid.c Sending content: D:\fieldtrip\@config\private\increment.mexw32 Sending content: D:\fieldtrip\src\getpid.mexw32 Sending content: D:\fieldtrip\src\nanmean.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\abs.mexw32 Sending content: D:\fieldtrip\src\ft_spike_sub_crossx.mexw32 Sending content: D:\fieldtrip\src\solid_angle.mexw32 Sending content: D:\fieldtrip\src\read_16bit.mexw32 Sending content: D:\fieldtrip\src\routlm.mexw32 Sending content: D:\fieldtrip\src\lmoutr.mexw32 Sending content: D:\fieldtrip\realtime\online_mri\ft_omri_smooth_volume.mexw32 Sending content: D:\fieldtrip\src\splint_gh.mexw32 Sending content: D:\fieldtrip\src\ltrisect.mexw32 Sending content: D:\fieldtrip\src\plinproj.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\rdivide.mexw32 Sending content: D:\fieldtrip\@config\private\deepcopy.mexw32 Sending content: D:\fieldtrip\src\nansum.mexw32 Sending content: D:\fieldtrip\ft_compile_mex.m Sending content: D:\fieldtrip\src\read_24bit.mexw32 Sending content: D:\fieldtrip\src\meg_leadfield1.mexw32 Sending content: D:\fieldtrip\@config\private\setzero.mexw32 Sending content: D:\fieldtrip\src\plgndr.mexw32 Sending content: D:\fieldtrip\src\nanstd.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\times.mexw32 Sending content: D:\fieldtrip\src\ft_getopt.mexw32 Sending content: D:\fieldtrip\src\mxSerialize.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\min.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\plus.mexw32 Sending content: D:\fieldtrip\fileio\@uint64\max.mexw32 Completed: At revision: 5511


Robert Oostenveld - 2012-03-22 10:34:02 +0100

revision 5512 contains the autosynced mex files on all other locations. What needs to be done is to check the dll dependencies once more.


Eelke Spaak - 2012-03-27 11:35:00 +0200

(Re)compiled a few missing Win32 mexfiles: Adding (bin) realtime/acquisition/siemens/sap2matlab.mexw32 Adding (bin) src/det2x2.mexw32 Adding (bin) src/inv2x2.mexw32 Adding (bin) src/mtimes2x2.mexw32 Adding (bin) src/rename.mexw32 Adding (bin) src/sandwich2x2.mexw32 Transmitting file data ...... Committed revision 5538.


Eelke Spaak - 2013-05-08 15:32:42 +0200

I think this has been taken care of. I'm assigning to Jorn, as he is the windows-wizard aroud here :) But as I said, I think you can just close the bugs, unless you find something problematic.