How do I get the external libraries I need?
Which versions of external libraries do I need?
There are a number of external libraries required to build the GLAST software suites. The links at the top of this page describe which external libraries to get and how to download them. Read through the rest of this page before downloading the libraries, because you may save yourself some trouble (especially if you already have a copy of ROOT on your computer).
The trick is to tell CMT where to
find these libraries.
This should setup CMT to allow it to find all external libraries. In some instances this may not be sufficient; for instance if some developers may wish to use a different version of a library. In this case a more detailed understanding of how CMT deals with external is necessary.
Installing ROOT
Finally, the special case of ROOT needs some extra explanation. It is realized that many people already possess a copy of ROOT on their computers. Nevertheless the default behaviour for GLAST code is to look for the ROOT package in the same directory as the rest of the external libraries (ie the GLAST_EXT directory). So, using the example above of external libraries installed in C:\extlib, CMT would expect to find the ROOT program installed at C:\extlib\ROOT\<version> (for instance <version> would be something like 2.25.03). The expected directory structure is somewhat different on unix. If you had GLAST_EXT set to /afs/slac/g/glast/extlib and were using linux, then CMT would expect to find ROOT at /afs/slac/g/glast/extlib/ROOT/v2.25.03/i386_linux22/root/.
This structure should be kept in mind by users who need to install ROOT. If they install ROOT as above, then they will need to do no other work, other than setting GLAST_EXT.
In some cases this default behaviour will not work. For instance, some users may use central copies of ROOT and will not be able be install the external libraries in the same directory. Alternately some users may have not wish to have ROOT installed in the same place as the external libraries. In these cases it is necessary for you to do some extra work to set up CMT to use ROOT. The easiest way to do this is to edit the requirements file for the ROOT package. You will want to replace the following macro definition
set ROOT_PATH "${ROOT_DIR}/v2.25.03/@sys/root" \
VisualC "${ROOT_DIR}/2.25.03" \
VisualCStatic "${ROOT_DIR}/2.25.03"
with something that points to where root is installed on your machine. For instance if your root package was installed at C:\root then you would change the above to
set ROOT_PATH "C:/root"
Note that the slashes are forward, despite the fact this is a windows path. CMT will treat them correctly. Also be aware that being able to use a copy of ROOT that is in a non-standard location, does not mean that you should use a different version of ROOT than the one expected by the GLAST program. Using a different version of ROOT will probably cause problems. It may be possible to make it work, but doing so will be your own responsiblility; it is not an option that the software group will support.
Page owner: R.Dubois
T. Lindner Last Modified: 12/02/2002 11:40