Re-use pre-existing code or programs
After you have set up a $G environment variables you can check out and build existing programs and libraries in your sandbox. Programs and libraries installed in the public $G area (e.g. $G/install_linux/bin/) are conveniently pre-built, but are subject to change. Building and using your own local copy ensures that you will be working with a private stable version.
Do not use the command examples on this page without understanding them. They are only examples and not rote commands. You will have to create variations appropriate to your own circumstances.
Before you can install private copies you need to create a directory for installed files. The installation directory is named install_$GARCH; where $GARCH is the platform name (e.g. install_linux or install_WIN32). By default the installation director is at the top of your sandbox; which can be your home direcotry or in the $G user area. Advanced users can designate any location by setting the $GTO variable.
> mkdir $GROOT/$USER/install_linux/
Utilities and libraries used by multiple projects are stored under the common/ directory. It is small enough that you can check out the whole thing or just the sub-directories you will be using. The following example checks out common include files (for the Nag libraries) and the gg and mri libraries and utilities.
> cd $GROOT/$USER > cvs co common/include common/gg common/mri
Now you can start to install the software. Dependent sofware must be built before components that use it. Many programs depend on the Nag headers so that usually needs to be installed first. The common/include/ directory contains just headers and has nothing to build.
> cd $GROOT/$USER/common/include/nag/ > make install
Other directories will need to be built before they are installed. The build process for a particular project is determined by the project developers and may vary. This is because there are many combinations of compilers, platforms, and versions that can potentially be built. Generally though make all will build generally useful combinations and and make allclean will clear out generated intermediate files.
> cd $GROOT/$USER/common/gg/ > make allclean > make all