Next Previous Contents

7. Externally sourced software and standards used by the NCCS

This section covers externally sourced software not addressed in previous sections.

7.1 C Programming Language

The NCCS is written primarily in C. The compiler is GNU C.

For information on the GNU libc C library currently used by Linux:

link to a list of C resources on the web at

Links to on-line courses in C:

Steve Holmes' course at

7.2 Programming on Unix and Unix-like systems

A variety of tutorials on programming on Unix and Unix-like systems is available online.

Little Unix Programmers Group (LUPG)'s Little Site at choo/lupg/tutorials/index.html has info on compiling C/C++, debugging with dbg, compiling with Makefiles, creating and using C libraries, Unix system programming, using sockets, multi-process programming and more.

7.3 Debian Linux

The NCCS computers all run on the Debian distribution of Linux.

link to Debian/GNU Linux at

7.4 Flexible Image Transport System (FITS)

Data will be exportable in FITS-format files, amongst others. The format for internal data files is not finalised. The libraries CFITSIO, FITSIO (now superceded by CFITSIO) and FTOOLS are available for working with FITS files. CFITSIO is installed, FTOOLS is present but not installed. The source code and information is all in /usr/local/src/fits/.

Links to external FITS documentation:

FITS Support Office home page at

Representations of celestial coordinates in FITS, updated regularly, by E W Greisen and M Calabretta, in egreisen/inFITS.html

Also look at Representations of celestial coordinates in FITS, updated regularly, by E W Greisen and M Calabretta, in egreisen/ or

Representations of celestial coordinates in FITS, updated regularly, by E W Greisen and M Calabretta, in mcalabre/

index to documentation on FITS usage for the GBT at

links to external FITS software:

FTOOLS - A General Package of Software to Manipulate FITS Files home page at

CFITSIO - A FITS File Subroutine Library home page at

fv: The Interactive FITS File Editor home page at

Links to local copies of FITS documentation (note that some of these may be out of date or have been replaced with updated versions):

Definition of the FITS standard for data files, NOST 100-2.0 of 1999/03/29, in /usr/local/src/fits/

FITS User's Guide, Version 4.0 of 1997/04/14, in /usr/local/src/fits/

CFITSIO User's Guide, Version 2.0 of 1998/11, for C programmers, in /usr/local/src/fits/cfitsio-v2027/

The FITSIO Cookbook, Version 1.1 of 1995/04, for Fortran programmers, in /usr/local/src/fits/fitsio-v503/

Users' Guide to FTOOLS, Version 3.5 of 1996/03/29, in /usr/local/src/fits/ftools-v35/ Note that this version is now out of date.

Setting up for fv, Version 2.5 of 1999/04/30, in /usr/local/src/fits/fv/fv.setup. "fv" is a FITS file viewer and editor.

7.5 PGPLOT graphics library

PGPLOT is in use for plotting data from analysis software such as PLOTA, LINES and WIP. It could be used by observing programs for plotting data.

link to manual on PGPLOT graphics functions callable from C and Fortran, installed at HartRAO, at tjp/pgplot/

link to homepage of WIP, an interactive plotting frontend using PGPLOT and particularly useful with FITS images, installed at HartRAO, at

7.6 SLALIB coordinate library

SLALIB is the astronomical coordinate transformation library from Starlink. The original (free) version is in Fortran, but a (proprietary) C version has been obtained from the author.

** Note that routine sla_DAT has to be updated on each occasion that a leap second is announced, and programs using it relinked.

The 'C' version of 2000/03/16 is installed in /usr/local/src/slalib_c. The C version of the library is in /usr/local/lib/libcsla.a and the requisite function prototypes are in the header file /usr/local/include/slalib.h

The fortran slalib of 1999/06/29 was obtained from the starlink archive and installed in /usr/local/src/star/. The Fortran library is installed in /usr/local/lib/libsla.a

The fortran slalib of 2000/03/13 was obtained from the starlink archive and installed in /usr/local/src/sla2000/

SLALIB documentation, of 2000/03/13, in ../nccs/doc/slalib/sun67.htx/sun67.html

SLALIB documentation, of 2000/03/13, in ../nccs/doc/slalib/

SLALIB C function prototypes, of 2000/03/13, in ../nccs/doc/slalib/slalib.fp, from slalib.h

link to Starlink home page, at

7.7 Standard Generalised Markup Language (SGML)

SGML is the standard documentation format for the NCCS, from which postscript, latex, plain text etc. can be produced. Plain ascii is the quick alternative. Use dselect to install SGML-Tools. This defines a suitable layout for documentation, and has tools to convert SGML to the other formats.

SGML-Tools User's Guide, html version 0.99.0 of 1996/11/29, in ../nccs/doc/sgmltools/guide.html.gz, taken from the SGML-Tools distribution.

link to the SGML-Tools User's Guide, html revision 1.3 of 1997/11/10 at

SGML-Tools User's Guide, plain text revision 1.3 of 1997/11/10, in ../nccs/doc/sgmltools/guide.txt. This version is best printed on a dot-matrix printer, being apparently formatted as a MAN page.

see sgmltools/example.sgml for an SGML example. It is not viewable by Netscape.

link to the SGML-Tools home page at

link to the SGML/XML home page at

link to Debian/GNU Linux and SGML at

7.8 TK/Tcl

TK/Tcl (or Tcl/TK) is one choice for the graphical user interface (GUI) to the NCCS. It is used for the GBT GUI.

/usr/lib/tk8.0/demos/ contains examples such as "widget".

Next Previous Contents