BioPSE NCRR SCIRun: Getting Started Installation and Configuration J. Davison de St. Germain (801)
BioPSE NCRR SCIRun: Install and Configure System Specs and RequirementsSystem Specs and Requirements Third Party CodesThird Party Codes Getting and Configuring SCIRunGetting and Configuring SCIRun Environment VariablesEnvironment Variables Using a Single Shared SCIRunUsing a Single Shared SCIRun Using CVS LocallyUsing CVS Locally
BioPSE NCRR System Specs and Requirements Required OS and Build Tools SGISGI IRIX 6.5IRIX 6.5 MIPSPro Compilers (CC) mMIPSPro Compilers (CC) m LinuxLinux Kernel Kernel GCC GCC BothBoth GNU Make GNU Make
BioPSE NCRR Minimum System Requirements Tested Systems: Gateway, Micron, Dell. Processor(s) Main Memory Other HW/SW SGI 250 MHz R10K 256 MB Texture Mapping Hardware/Memory Linux 700 MHz Pentium III 256 MB NVIDIA GeForce3 Graphics Card, XFree86 drivers version
BioPSE NCRR Third Party Software RequiredRequired Tcl, Tk, Itcl, Itk, BLT, XercesTcl, Tk, Itcl, Itk, BLT, Xerces OptionalOptional MPEGe LibMPEGe Lib MPEG EncoderMPEG Encoder LibimageLibimage teemteem
BioPSE NCRR Third Party Codes You can install all the third party codes yourself, but we highly recommend using the SCIRun Thirdparty TarballYou can install all the third party codes yourself, but we highly recommend using the SCIRun Thirdparty Tarball Stable BuildStable Build Build - v Mar 16, 2002Build - v Mar 16, 2002 Development BuildDevelopment Build Build - v Apr 24, 2002Build - v Apr 24, biopse/scirun-biopse_bundles.xml?package=full
BioPSE NCRR Third Party Codes Cont. Download tarball: Thirdparty_install.x.x.x.tar.gzDownload tarball: Thirdparty_install.x.x.x.tar.gz Gunzip / untarGunzip / untar cd Thirdparty_install.x.x.xcd Thirdparty_install.x.x.x Set your compilers (must match SCIRun compilers):Set your compilers (must match SCIRun compilers): setenv CC gccsetenv CC gcc setenv CXX g++setenv CXX g++ setenv TAR gtar # Need a gnu compatible tarsetenv TAR gtar # Need a gnu compatible tar
BioPSE NCRR Third Party Codes Cont. Run (must have Python version or higher!)Run (must have Python version or higher!) python install [# procs]python install [# procs] E.g.:E.g.: python install /usr/local/SCIRun_Thirdparty linux gcc python install /usr/local/SCIRun_Thirdparty linux gcc Creates directory structure:Creates directory structure: /usr/local/SCIRun_Thirdparty/ / / //usr/local/SCIRun_Thirdparty/ / / / bin, include, lib, man, src
BioPSE NCRR Getting and Configuring SCIRun Go to sci websiteGo to sci website Software: Documentation: Use configureUse configure Configure verifies that your system has the proper libraries, etc to build and run SCIRunConfigure verifies that your system has the proper libraries, etc to build and run SCIRun
BioPSE NCRR SCIRun Directory Structure Tarball creates (src files):Tarball creates (src files):./SCIRun/src/./SCIRun/src/ Packages/ Packages/ BioPSE BioPSE Core Core Dataflow Dataflow … User Creates (obj files):User Creates (obj files):./SCIRun/sgi32opt./SCIRun/sgi32opt sgi64dbg sgi64dbg linux32opt linux32opt
BioPSE NCRR Using Configure configure configure --with-thirdparty= /usr/local/SCIRun_Thirdparty/1.5.2/aix51/xlC-32bit --enable-package=“BioPSE Uintah” --enable-optimize[=“your flags”] (default: –O2) --enable-debug --enable-64bit (or 32bit) --enable-sci-malloc (--disable-sci-malloc) --enable-assertion-level=X (X=0..3, default = 3) --with- =/path/to/package --enable-verbosity (Use this before calling )
BioPSE NCRR Using Configure Cont. Important configure files config.status Includes the configure command used to configure this build config.cache Stores information about the current system that can speed the configure process Warning: this can bite you if configure gets it wrong the first time! config.log Information about the configure run
BioPSE NCRR Using Configure Cont. Configure creates a number of important files. Look in these to determine how your system is set up! sci_defs.h #define SCI_ASSERTION_LEVEL 3 #define HAVE_MPI #define SCI_32BITS configVars.mk Location of libs and include files for all supported packages Compilers (CC,CXX,F77) Compiler Flags Basic build rules for.cc,.c,.f, etc This file is used (included) in the Makefile
BioPSE NCRR Environment Variables Helpful Enviroment Variables That Can Be Set Before Running SCIRun: THREAD_NO_CATCH_SIGNALS When using Pthreads, do not try to handle signals SCI_DBXCOMMAND (“winterm –c dbx –p %d &”) Debugger command to run on error MALLOC_STRICT Help catch bad memory references (only if using SCI malloc) MALLOC_TRACE (filename) Name of file to save malloc info in
BioPSE NCRR Environment Variables Cont. MALLOC_STATS (filename) Name of file to save malloc stats in MALLOC_LAZY Don’t audit memory all the time SCI_SIGNALMODE (“ask”,”r”,”d”…) What to do when an error occurs SCI_DEBUG (stream:[+/-]) List of debug output streams to turn on (file to write output to) E.G.: “threadwatch:+,memwatch:+mem.out”
BioPSE NCRR Environment Variables Cont. Locations searched for data: SCIRUN_DATA (directory path) SCI_DATA (directory path) PSE_DATA (directory path)
BioPSE NCRR Sharing a Single SCIRun Mostly for Groups of Users (Not developers) Single Shared Copy of SCIRun Installed by main user or admin Common location Each SCIRun Installation can take up to 350+ MB Permissions must be Set Correctly Or pre-compile all dynamically compiled files initially./SCIRun/sgi64opt/on-the-fly-libs
BioPSE NCRR Using CVS Locally You can set up a CVS repository locally to manage your changes to SCIRun code/modules. Keep it in sync using the command… > cvs import
BioPSE NCRR Install and Configure: Questions Questions?
BioPSE NCRR Using CVS cvs checkout cvs checkout -Done once cvs update –Pd [file/dir names] -P => prune empty directories -d => include new directories -r => update to specified tag/revision number (sticky) -A => clear sticky tags -D => update to this date
BioPSE NCRR Using CVS Cont. cvs diff filename What has changed in the fileWhat has changed in the file cvs log filename Comments stored with each update to the fileComments stored with each update to the file cvs annotate filename Who “owns” each line in the fileWho “owns” each line in the file