CCL | Software | Download | Manuals | Forum | Papers
CCL Home

Research

Software Community Operations

CCL Group Storage

Your home directory as well as software and data for the CCL are installed in the AFS filesystem, which is shared among all machines at ND. All important data should be stored in AFS so that it is backed up and available from any machine.

The CCL group directory is here:

/afs/crc.nd.edu/group/ccl
Within the CCL group directory, you have a work directory, which should be used for all code data particular to the CCL:
/afs/crc.nd.edu/group/ccl/work/$USER
Standard CCL software is installed here (and described in detail below)
/afs/crc.nd.edu/group/ccl/software
Where possible, use github for storing and sharing git repositories. However, if you have a need to store git repos locally, put them here:
/afs/crc.nd.edu/group/git/$REPO
Files to be shared with others users that may change on a short term basis should go here:
/afs/crc.nd.edu/group/share
Research data sets that should be archived for the long term go here. However, note that data, once placed here, should not be modified.
/afs/crc.nd.edu/group/data
Sources for our various web sites are here:
/afs/crc.nd.edu/group/web
The CRC also provides a high performance parallel filesystem, which is meant to be used to manage large (>1TB) amounts of temporary storage, but files are automatically deleted after 365 days. You can request a directory on that filesystem by asking the CRC, which will create it here:
/scratch365/$USER

Software Organization

This directory contains the deployed versions of the cctools software, as well as other software packages that the lab depends upon:
/afs/crc.nd.edu/group/ccl/software
To use the software directory, do one of these:
source /afs/crc.nd.edu/group/ccl/software/cclsetup.sh
source /afs/crc.nd.edu/group/ccl/software/cclsetup.csh
Then, you can list some preconfigured software packages like this:
cclimport --list
And import a specific version to use like this:
cclimport gnuplot 5.0.2

Installing New Software

Since we operate on a wide variety of changing architectures (intel, arm, sparc, ...) and operating systems (redhat, ubuntu, osx, ...) a directory tree represents each platform that we support:
/afs/crc.nd.edu/group/ccl/software/...
i386/redhat5
x86_64/redhat5
x86_64/redhat6
x86_64/redhat7
x86_64/osx11
...
And two platform independent directories:
scripts
sources
Several scripts in the software directory make it easy to set things up:
  • cclplatform.sh prints out the current platform like x86_64/redhat6.
  • cclsetup.sh (or cclsetup.csh) examine the current platform, and set your shell variables and path to include the current cctools deployment.
  • With care, you can install software from source, so that anyone can use it. Just make sure that it goes in the proper directory as follows:
    1. Download and unpack source code into $CCLHOME/software/source/package-1.2.3
    2. ./configure --prefix=$CCLSOFTWARE/package/1.2.3
    3. make
    4. make install
    5. repeat as needed by logging into machines of different platforms

    Then, to facilitate finding the current version, add a symlink:

    ln -s $CCLSOFTWARE/package/1.2.3 $CCLSOFTWARE/package/current