FYI - I was able to get afni to compile on my solaris machine with just a few alterations. I haven't thoroughly tested it. The only binary I could not get to work was 3dBlurInMask, which, to be honest, I have no idea what it does anyway 8^) The error is:
% make 3dBlurInMask
/bin/rm -f 3dBlurInMask
/app/abt/sw/SUNWspro-11.0/bin/cc -xarch=generic64 -xcode=pic32 -xO2 -xbuiltin=%all -xlibmil -Xa -w -DSOLARIS -DSOLARIS_DIRENT_ZERO -DUSE_TRACING -DDONT_USE_MCW_MALLOC -o 3dBlurInMask 3dBlurInMask.o -s -L. -L/usr/dt/lib -L/usr/openwin/lib -lmri -lXm -lXt -lX11 -lz -lm -lsocket -lnsl -lgen -ldl -lc -lf2c -lmri
Undefined first referenced
symbol in file
THD_make_remove_isolas 3dBlurInMask.o
ld: fatal: Symbol referencing errors. No output written to 3dBlurInMask
make: *** [3dBlurInMask] Error 1
AND:
% grep THD_make_remove_isolas *
3dBlurInMask.c: ii = THD_make_remove_isolas( mask_nx,mask_ny,mask_nz , mask ) ;
weird??
The main changes were to re-define a bunch of "f" functions. What are the differences between, for example expf() and exp()?
Here are the diff reports from the 3 changed files, Makefile.INCLUDE, afni.h and mrilib.h (not sure if I have to do both of these .h files):
--- afni_src/Makefile.INCLUDE Thu May 21 15:53:24 2009
+++ afni_src_works/Makefile.INCLUDE Fri May 22 14:55:40 2009
@@ -84,7 +84,7 @@
1dFlagMotion 3dTsort 1dTsort 3dTfitter afni_history 1dUpsample \
3dLocalSVD 3dLocalCormat 3dErrtsCormat 3dUndump 3dREMLfit \
3dUpsample 3dTcorrMap 3dmatmult 3dABoverlap 3dmaskSVD 1dBandpass \
- 3dBlurInMask 3dRank \
+ 3dRank \
$(EXTRAS)
PROGRAMS_NOPLUG = afni to3d from3d abut 3dclust nsize 3dinfo 3dproject 3dmerge \
--- afni_src/afni.h Fri May 15 13:46:51 2009
+++ afni_src_works/afni.h Fri May 22 14:06:12 2009
@@ -34,6 +34,15 @@
#endif
#endif
+/* redefine "f" functions */
+#define logf(x) log(x)
+#define powf(x,y) pow(x,y)
+#define cbrtf(x) cbrt(x)
+#define expf(x) exp(x)
+#define cosf(x) cos(x)
+#define sinf(x) sin(x)
+#define floorf(x) floor(x)
+
/*------------------------------------------------------------
Global data holding command line arguments information
--------------------------------------------------------------*/
--- afni_src/mrilib.h Fri May 1 15:18:16 2009
+++ afni_src_works/mrilib.h Fri May 22 14:06:27 2009
@@ -524,6 +524,15 @@
/**** macros ****/
+/* redefine "f" functions */
+#define logf(x) log(x)
+#define powf(x,y) pow(x,y)
+#define cbrtf(x) cbrt(x)
+#define expf(x) exp(x)
+#define cosf(x) cos(x)
+#define sinf(x) sin(x)
+#define floorf(x) floor(x)
+
static int MRI_mm ;
/*! Median of 3. */