SCIJump:Complete Install
From SCIJump
| Table of contents |
How to build SCIJump from source
This document describes the process of configuring and building the SCIJump research code, including the SCIJump framework, GUI, and various experimental component models.
Dependencies
Building on Debian
Make sure the following packages are installed:
- tk[version]-dev
- libglew-dev
- libxmu-dev
- libxi-dev
- libxaw[version]-dev
Building on Mac OS X
XCode (http://developer.apple.com/tools/xcode) developer tools (at least version 1.5) and X11 SDK (should be included in XCode packages) needs to be installed. See the SCIRun documentation (http://software.sci.utah.edu/SCIRunDocs/index.php/CIBC:Documentation:SCIRun) for more detail.
SCIRun
SCIJump software is distributed with SCIRun. All required classes build automatically.
SCIRun Thirdparty
This package consists of bundled third-party libraries. It is freely available (registration required (http://software.sci.utah.edu/cgi-bin/registration.pl?soft=SCIRun)) here (http://software.sci.utah.edu/scirun.html).
Select the appropriate Thirdparty source download for your platform. Version 1.25.4 is recommended.
Estimated time to build: 1 hour
Before building SCIJump, set the following environment variables:
SCIRUN_THIRDPARTY=/path/to/scirun/thirdparty/installation PATH=$SCIRUN_THIRDPARTY/bin:$PATH LD_LIBRARY_PATH=$SCIRUN_THIRDPARTY/lib:$LD_LIBARARY_PATH
X
X libraries and development headers are required.
GLEW
If your version of Thirdparty is not 1.25, then the OpenGL Extension Wrangler Library (GLEW) (http://glew.sourceforge.net/) is required. If GLEW is not installed in system directories, configure with --with-glew=path-to-glew.
Mac OS X
Use GLEW version 1.3.4 and export GLEW_APPLE_GLX=1.
Flex
Flex is widely available in various binary formats for Linux. Alternatively, source downloads are available from the GNU (http://www.gnu.org) site. Flex should be available in OS X (http://www.apple.com/lae/macosx/technologies/darwin.html) distributions.
Bison
Bison is widely available in various binary formats for Linux. Alternatively, source downloads are available from the GNU (http://www.gnu.org/) site. Bison should be available in OS X (http://www.apple.com/lae/macosx/technologies/darwin.html) distributions.
Awk/Gawk
Gawk is widely available in various binary formats for Linux. Awk should be available in OS X (http://www.apple.com/lae/macosx/technologies/darwin.html) distributions.
PNG
ImageMagick
ncurses
Ncurses (http://www.gnu.org/software/ncurses/ncurses.html) libraries and development headers need to be available to compile the default SCIJump interface, which is a text-based builder component (TxtBuilder).
Zlib
The Zlib (http://www.zlib.net/) data compression library and development headers are required for SCIRun.====ncurses====
Component Model Dependencies
SCIJump code has dependencies on multiple third-party software packages. The table below lists the various code modules available with SCIJump and their dependencies. Be sure to carefully check the build instructions for each third-party dependency.
| Component Model or Feature | Dependencies | Configure option |
|---|---|---|
| SCIJump framework | SCIRun Thirdparty, X, Flex, Gawk, Bison, ncurses, Zlib | --with-thirdparty=/path/to/thirdparty |
| SCIJump GUI Builder (recommended) | wxWidgets | --with-wxwidgets=/path/to/wxWidgets |
| Dataflow components | SCIRun Thirdparty | --with-thirdparty=/path/to/thirdparty |
| Parallel components (optional) | MPI | --with-mpi=/path/to/mpi |
| Bridge components (optional) | Ruby, Babel | --with-ruby=/path/to/ruby --with-babel=/path/to/babel |
| VTK components (optional) | VTK | --with-vtk=/path/to/vtk |
| Babel components (recommended) | Babel | --with-babel=/path/to/babel |
| TAO Corba components (optional) | TAO | ---with-tao=/path/to/ACE+TAO |
wxWidgets
wxGTK
wxWidgets (http://www.wxwidgets.org) is necessary if you want to build the graphical user interface to the SCIJump framework (recommended). wxWidgets distributions organized by platform can be downloaded from this page. The most recent version of wxWidgets known to work with SCIJump is 2.6.3.
At least the following configure options need to be enabled:
--enable-shared --enable-threads --with-opengl
(Note: list of widget classes that need to be enabled here!!!)
Before building SCIJump, set the following environment variables:
WXDIR=/path/to/wxWidgets/installation PATH=$WXDIR/bin:$PATH LD_LIBRARY_PATH=$WXDIR/lib:$LD_LIBRARY_PATH
wxMac
See the Mac OS X tutorial (http://www.wxwidgets.org/wiki/index.php/Mac_OS_X_And_Xcode_For_Beginners|) to build using Xcode (http://developer.apple.com/tools/xcode/|).
Babel
The Babel compiler can be freely obtained from here (http://www.llnl.gov/CASC/components/babel.html). SCIJump currently supports Babel versions up to 1.0.4.
Babel requires Java, at least libxml2 2.4.0 and Python to build the testing framework. Please read the Babel install instructions for details.
Estimated time to build: < 1 hour
Before building SCIJump, set the following environment variables:
JAVA_HOME=/path/to/java/install BABEL_HOME=/path/to/babel/install PATH=$JAVA_HOME/bin:$BABEL_HOME/bin:$PATH
MPI
The SCIJump software has been used most frequently with the LAM/MPI implementation. The LAM/MPI software can be freely downloaded from www.lam-mpi.org. SCIJump supports LAM/MPI version 7.0.6 and higher.
SCIJump has also been built with MPICH (http://www-unix.mcs.anl.gov/mpi/mpich) version 1.2.7.
Estimated time to build: 2-3 hours
Ruby
Ruby is an interpreter for the Ruby scripting language. Ruby can be freely downloaded from www.ruby-lang.org (http://www.ruby-lang.org/en/).
ERB
Older Ruby distributions may not include the ERB (http://www.ruby-doc.org/stdlib/libdoc/erb/rdoc/classes/ERB.html) package, which is required for SCIJump component model bridging. Download ERB from here (http://raa.ruby-lang.org/project/erb).
Estimated time to build: 1 hour
Before building SCIJump, set the following environment variables:
RUBYDIR=/path/to/ruby/installation PATH=$RUBYDIR/bin:$PATH
VTK
The Visualization Toolkit can be freely downloaded from here (http://www.vtk.org).
SCIJump VTK components have been tested with VTK 4.2. VTK requires CMake. See the VTK build instructions for details.
Estimated time to build: 2-3 hours
TAO Corba
See the Center for Distributed Object Computing (http://deuce.doc.wustl.edu) site for project details. Download the ACE+TAO distribution here (http://deuce.doc.wustl.edu/Download.html).
Configuring SCIJump
To build the SCIJump framework, add the --enable-scijump option to the configure line. Dependencies for SCIJump components are configured by adding configure options.
The following command line, for example, configures SCIJump with the works.
PATH/TO/SCIRun/src/configure --enable-scijump
--enable-debug
--with-thirdparty=$THIRDPARTY
--with-babel=$BABELDIR
--with-mpi=$MPIDIR
--with-ruby=$RUBYDIR
--with-vtk=$VTKDIR
--with-wxwidgets=$WXDIR
Making SCIJump
Use the GNU Makefile to compile the framework libraries and executable.
make all
