AFNI Message Board

Dear AFNI users-

We are very pleased to announce that the new AFNI Message Board framework is up! Please join us at:

https://discuss.afni.nimh.nih.gov

Existing user accounts have been migrated, so returning users can login by requesting a password reset. New users can create accounts, as well, through a standard account creation process. Please note that these setup emails might initially go to spam folders (esp. for NIH users!), so please check those locations in the beginning.

The current Message Board discussion threads have been migrated to the new framework. The current Message Board will remain visible, but read-only, for a little while.

Sincerely, AFNI HQ

History of AFNI updates  

|
September 22, 2005 06:09PM
Here's how I built 3dSkullStrip/SUMA on solaris2.9 using Sun Studio 10...

1. Install sun's OpenGL (I used 1.3)

[www.sun.com]

2. Download and extract the latest afni_src (AFNI_2005_09_06_0927)

3. Pick Makefile.solaris29_suncc

> cd [afni_src]
> cp Makefile.solaris26_suncc Makefile

4. Add SUMA varables near the end of [afni_src]/Makefile

[snip]
# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
# For SUMA
SUMA_INCLUDE_PATH = -I/usr/openwin/share/include/X11 -I./ -I../ -I../niml/ -Igts/src
SUMA_LINK_PATH = -L/usr/openwin/lib -R/usr/openwin/lib -L../
SUMA_LINK_LIB = $(LZLIB) -lm -lGL -lGLU -lGLw -lXmu -lXm -lXp -lXt -lXext -lX11 -lsocket -lnsl
SUMA_MAKEFILE_NAME = SUMA_Makefile_NoDev
SUMA_BIN_ARCHIVE = SUMA_solaris28_suncc.tar
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

######################################################################

MAKE = make
include Makefile.INCLUDE
[end of file]

5. Build AFNI vastness

> cd [afni_src]
> make vastness

6. Modify [afni_src]/SUMA/SUMA_BrainWrap.c in two places

The Sun Studio 10 compiler complains about declaring SOCenter as a zero length array in lines 1081 and 1457 of SUMA_BrainWrap.c:

line 1081: float hdim[3], t0, t1, t2, SOCenter[0], p0[3], p1[3];
line 1457: float hdim[3], t0, t1, t2, SOCenter[0], p0[3], p1[3];

SOCenter is declared elsewhere in the file as "SOCenter[3]" so I blindly changed these lines to:

line 1081: float hdim[3], t0, t1, t2, SOCenter[3], p0[3], p1[3];
line 1457: float hdim[3], t0, t1, t2, SOCenter[3], p0[3], p1[3];

7. Fail to build SUMA

> cd [afni_src]
> make suma_exec

This will ultimately fail complaining about MarchingCubes.o, but this needs to be done before the next step anyway.

8. Build the "release" version of MarchingCubes.o

To the extent that I understand what happens inside [afni_src]/SUMA/MarchingCubes/Makefile, MarchingCubes.o gets built (via the "mc" target) with performance flags, but this ends up causing linking problems (unresolved _mcount references) later.

My workaround was to compile the "release" version using the "mcR" target by hand, but this doesn't work from SUMA_Makefile_NoDev so I did it manually.

> cd [afni_src]/SUMA/MarchingCubes
> make mcR
> cp release/MarchingCubes.o debug/MarchingCubes.o
> cp release/MarchingCubes.o ..

Note: This builds MarchingCubes.o using gcc, but that seems to be OK. I tried to do this before "failing to build suma" but a "rm *.o" in the SUMA directory the first time causing the incompatable debug version to be built, so that doesn't work.

9. Build and install SUMA

> cd [afni_src]
> make suma_exec install

After this 3dSkullStrip seems to work on solaris. I don't know enough about SUMA to know if the rest of SUMA works or not.

--judd

Subject Author Posted

Compiling 3dSkullStrip/SUMA on solaris

Judd Storrs September 22, 2005 06:09PM

Re: Compiling 3dSkullStrip/SUMA on solaris

Ziad S. Saad September 23, 2005 11:43AM