A SSSC User's Guide

Setting the User's or Developer's Environment

The SSSC developer's environment allows you to run SSSC software; to develop your own modules; and to develop software for the SSSC. SSSC software is revision controlled, but there is nothing to prevent users from creating and running private modules outside the official collection.

Running SSSC Software

No special environment settings are required to run SSSC modules. All you need to know is where the programs reside; it is useful of course to include this information in your path. If you wish to run released software, the programs can be found under the directory ~CM/bin/_XXX, where XXX is a name corresponding to the appropriate architecture of the system on which you are running. Three architectures are officially supported with the full suite of modules: It is useful to add the following lines to your .login file:
  if (-e ~CM/bin/whatru) then
    setenv MACHINE `~CM/bin/whatru`
    set MACHINE = `printenv MACHINE`
    set path = (~CM/bin/_$MACHINE ~CM/script $path)
  endif
To be able to read the SSSC man pages online (they are also on the Web), if you are on an SGI (or other System V) machine, you should also modify your MANPATH environment variable:
  setenv MANPATH ~CM/man
To read SSSC man pages on a BSD machine you need to give the command (often aliased):
  man -P ~CM/man

Creating Strategy Modules

In order to create your own modules it is only necessary to link your modules with the appropriate interface drivers. No special environment settings are required. For example:
  cc -c /mymodule.c -I/home/soi/CM/include -I/usr/include
  cc -o mymodule mymodule.o ~CM/src/cmd/_$MACHINE.b/main.o \
    -L/home/soi/CM/lib/_$MACHINE -lsoi
  cc -o mymodule_svc mymodule.o ~CM/src/cmd/_sgi.b/main_svc.o \
    ~CM/src/modules/_$MACHINE.b/logkey.o -L/home/jim/pvm3/lib/$ARCH -lpvm3 \
    -L/home/soi/CM/lib/_$MACHINE -lpe -lsoi
(Italicized arguments are for inclusion of optional files and library procedures.) The second of the two load commands is for creation of a service module that can be executed by a pe. Note that it requires the setting of the environment variable ARCH, of which legitimate values are SGI, SGI4, PMAX (corresponding to mips), and SUN4.

SSSC Software Development

If you wish to modify or contribute to existing SSSC software under configuration control, you must set up a personal staging area. This is can be a directory tree rooted anywhere in the file system under your control. The root of the tree should be placed in the environment variables STAGING and MKROOT. Example:
  setenv STAGING ~/my_staging_root
  setenv MKROOT $STAGING
Once you have created your staging area root directory and set the environment variables, you should follow the detailed instructions in the man page for bcs_soi to get set up.

With a properly configured staging area, the following commands in your .login file will assure that you make and run in your development environment:

  setenv STAGING ~/my_staging_root
  setenv MKROOT $STAGING
  if (-e $STAGING/bin/whatru) then
    setenv MACHINE `$STAGING/bin/whatru`
    set MACHINE = `printenv MACHINE`
    set path = ($STAGING/bin/_$MACHINE $STAGING/script $path)
  endif
  setenv MANPATH $STAGING/man


Please address comments and questions to Jim Aloise or Rick Bogart


This page last revised 23 September, 1997


SSSC User's Guide - Return SOI home page