3DMA-Neuron: Installation Instructions

Table of Contents

A) Distribution Contents

B) Preliminary Note

C) Associated executables

D) Environmental variables

E) Compiling the "3dma" executable

F) Compiling the "3dmaGUI" executable

G) Testing the compilation




A) Distribution Contents

The 3DMA_Neuron distribution comes as a Unix gzip'd, tar'd file containing the following directory structure.

			      med_ax
	
			Test    bin    src	USER_AGREEMENT
For purposes of this discussion, we assume the user installs the distribution at the absolute address "/home".
	e.g.
		cd /home
		gunzip 3dma_neuron_0104.tar.gz
		tar -xf 3dma_neuron_0104.tar




B) Preliminary Note

As we frequently find ourselves with several versions of the 3DMA-Neuron executables present, compiled for different Unix architectures, we have adopted the convention that the names of executables involved with running the 3DMA-Neuron code have an architecture identifying string appended. The string to be appended can be chosen by the user; we employ obvious choices such as "sun", "sgi", "irix", "lnx". For purposes of this discussion, we shall use the string "lnx".

The affected executables are:

stripcomm_lnx
3dma_lnx
3dmaGUI_lnx




C) Associated executables

The 3DMA-Neuron code consists of two main executables, "3dma_lnx", which executes command-line strings, and "3dmaGUI_lnx", which is the graphical user interface through which the user interacts with the command line executable "3dma_lnx". (See further discussion in http://www.ams.sunysb.edu/~lindquis/3dma/3dma_neuron/3dma_neuron_run.html)

Before these executables can be run, some associated executables in "/home/med_ax/bin" must be constructed.

% cd /home/med_ax/bin
% gcc stripcomm.c -o stripcomm_lnx
% gcc static_analysis.c -o static_analysis -lm
% gcc mtif_header.c -o mtif_header -lm

% cd /home/med_ax/bin/JGRAPH
% make jgraph
% mv jgraph ..
% make clean

There are also the supporting executable shellscripts
nar differ     run3dma     runcase
generate_inputfile stif_2_mtif create_wdir
in "/home/med_ax/bin" which do not have to be compiled.




D) Environmental Variables

To compile and run the 3DMA-Neuron code executables, the "path" environmental variable must list the directories "/home/med_ax/bin" and "." (the current directory).

% set path=( $path /home/med_ax/bin . )
(Again, pay particular attention to including the "." (period character))

Additionally, the environment variable "HOME_3dma" must be set, containing the directory where the med_ax directory is found.

% setenv HOME_3dma /home




E) Compiling the "3dma" executable

E1)   Makefile changes:

Edit the file "/home/med_ax/src/makefile" and check the macro definitions on lines 1 through 64.

The string "ARCH" must be set to the architecture identifying string chosen in section B) Prelimary Note.

ARCH = lnx

E2)   For RedHat Linux 7.0 and below:

Significant changes were made to the Gnu C++ compiler starting with the RedHat8.0 release. The "3dma" source code has been updated to reflect these changes. If the machine on which "3dma" will be compiled is running RedHat8.0 or higher, no changes to the code are necessary.

For RedHat7.0 and below, you can still compile and run the "3dma" executable. All C++ changes occured in the "seg_krig" directory. For backwards compatibility, there is a "seg_krigRH6" directory which contains the affected source code for running "3dma" on RedHat7.X and below.

To exchange these directories so that "3dma" can be compiled on RedHat7.X or below, execute the following commands:

% cd /home/med_ax/src
% mv seg_krig seg_krigRH8
% mv seg_krigRH6 seg_krig
This exchanges the directory names so that compilation should work properly.

E3)   To compile the "3dma" executable:

% cd /home/med_ax/src
% make 3dma >& makelog &
This will install the the executable "/home/med_ax/bin/3dma_lnx".

Note the makefile uses the utility "/home/med_ax/bin/nar" which provides modifications to the UNIX "ar" command.




F) Compiling the "3dmaGUI" executable

F1)   Motif/Lesstif

The 3DMA-Neuron graphical user interface (GUI) uses Motif (SGI/Irix machines) or LessTif (Linux). On some machines (e.g. RedHat Linux 8.0), this package is already installed with the OS; otherwise a public distribution of LessTif can be downloaded from http://www.lesstif.org.

To compile and run the "3dmaGUI" executable, the environment variable "LD_LIBRARY_PATH" must be set to the absolute path address of the Motif (LessTif) libraries.

For Linux:
% setenv LD_LIBRARY_PATH ':/usr/local/LessTif/Motif2.0/lib'
    or
% setenv LD_LIBRARY_PATH ':/usr/X11R6/LessTif/Motif1.2/lib'

For SGI:
% setenv LD_LIBRARY_PATH ':/usr/Motif-1.2/lib32'


F2)   Makefile changes:

Edit the file "/home/med_ax/src/makefile" and check the macro definitions of "XMINCLUDE" and "XMLIBS" on lines 65 through 79. The "XMINCLUDE" ("XMLIB") entry must contain the absolute path address of the Motif/LessTif "include" ("lib") directory respectively.

eg:  For Linux running LessTif/Motif version 1.2:

XMINCLUDE = -I/usr/X11R6/include -I/usr/X11R6/LessTif/Motif1.2/include
XMLIBS = -L/usr/X11R6/lib -L/usr/X11R6/LessTif/Motif1.2/lib -lXm -lXt -lX11

F3)   To compile the 3dmaGUI code:
% cd /home/med_ax/src
% make 3dmaGUI >& makelogGUI &
This will install the the executable "/home/med_ax/bin/3dmaGUI_lnx".

Note the makefile uses the utility "/home/med_ax/bin/nar" which provides modifications to the UNIX "ar" command.




G) Testing the 3DMA-Neuron executables

Once you have built the "3dmaGUI" executable, the 3DMA-Neuron code can be run following the instructions at http://www.ams.sunysb.edu/~lindquis/3dma/3dma_neuron/3dma_neuron_run.html.
This html file also explains how to perform an initial test using data available in the "/home/med_ax/Test" directory.