SCIRun: Getting Started BioPSE Installation and Configuration J. Davison de St. Germain dav@cs.utah.edu (801) 581-4078 NCRR SCIRun: Install and Configure BioPSE • System Specs and Requirements • Third Party Codes • Getting and Configuring SCIRun • Environment Variables • Using a Single Shared SCIRun • Using CVS Locally http://software.sci.utah.edu/scirun.html NCRR System Specs and Requirements Required OS and Build Tools • SGI BioPSE • IRIX 6.5 • MIPSPro Compilers (CC) 7.3.1.1m • Linux • Kernel 2.2.17 • GCC 2.95.3 • Both • GNU Make 3.79.1 http://software.sci.utah.edu/doc/TechnicalGuide/p1c1.html NCRR Minimum System Requirements BioPSE 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 1.0-1541 http://software.sci.utah.edu/doc/TechnicalGuide/p1c2.html Tested Systems: Gateway, Micron, Dell. http://software.sci.utah.edu/tested_systems/tested_systems.html NCRR Third Party Software • Required BioPSE • Tcl, Tk, Itcl, Itk, BLT, Xerces • Optional • MPEGe Lib • MPEG Encoder • Libimage • teem http://software.sci.utah.edu/doc/TechnicalGuide/p1c1.html NCRR Third Party Codes BioPSE • You can install all the third party codes yourself, but we highly recommend using the SCIRun Thirdparty Tarball • Stable Build • Build - v1.4.2 - Mar 16, 2002 • Development Build • Build - v1.5.1 - Apr 24, 2002 http://software.sci.utah.edu/downwiz/scirunbiopse/scirun-biopse_bundles.xml?package=full NCRR Third Party Codes Cont. BioPSE • • • • Download tarball: Thirdparty_install.x.x.x.tar.gz Gunzip / untar cd Thirdparty_install.x.x.x Set your compilers (must match SCIRun compilers): • setenv CC gcc • setenv CXX g++ • setenv TAR gtar # Need a gnu compatible tar http://software.sci.utah.edu/doc/TechnicalGuide/p1c3.html NCRR Third Party Codes Cont. BioPSE • Run (must have Python version 1.5.2 or higher!) • python install <base-path> <architecture> <compiler> <bit-size> [# procs] • E.g.: • python install /usr/local/SCIRun_Thirdparty linux gcc3.0.4 32 4 • Creates directory structure: • /usr/local/SCIRun_Thirdparty/<version #>/<OS>/<compiler>/ - bin, include, lib, man, src http://software.sci.utah.edu/doc/TechnicalGuide/p1c3.html NCRR Getting and Configuring SCIRun BioPSE • Go to sci website • Software: www.sci.utah.edu/software • Documentation: www.sci.utah.edu/doc • Use configure • Configure verifies that your system has the proper libraries, etc to build and run SCIRun http://software.sci.utah.edu/doc/TechnicalGuide/p1c2.html NCRR SCIRun Directory Structure • Tarball creates (src files): ./SCIRun/src/ Packages/ BioPSE Core Dataflow … • User Creates (obj files): ./SCIRun/sgi32opt sgi64dbg linux32opt BioPSE NCRR Using Configure BioPSE configure <options> --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-<other packages>=/path/to/package --enable-verbosity (Use this before calling ) http://software.sci.utah.edu/doc/TechnicalGuide/p1c2.html NCRR Using Configure Cont. • Important configure files BioPSE • 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 NCRR Using Configure Cont. BioPSE • 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 NCRR Environment Variables BioPSE 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 NCRR Environment Variables Cont. • MALLOC_STATS (filename) BioPSE • 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” NCRR Environment Variables Cont. • Locations searched for data: BioPSE • SCIRUN_DATA (directory path) • SCI_DATA (directory path) • PSE_DATA (directory path) NCRR Sharing a Single SCIRun • Mostly for Groups of Users BioPSE • (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 NCRR Using CVS Locally BioPSE 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 http://www.cvshome.org/docs/manual/cvs_13.html NCRR Install and Configure: Questions BioPSE Questions? NCRR Using CVS BioPSE cvs checkout <SCIRun|BioPSE> - Done once cvs update –Pd [file/dir names] - P => prune empty directories - d => include new directories - r <tag> => update to specified tag/revision number (sticky) - A => clear sticky tags - D <“04/15/02”> => update to this date http://www.cvshome.org/docs/manual/ NCRR Using CVS Cont. BioPSE cvs diff filename • What has changed in the file cvs log filename • Comments stored with each update to the file cvs annotate filename • Who “owns” each line in the file NCRR