Getting Started | Documentation | Glish | Learn More | Programming | Contact Us |
Version 1.9 Build 1367 |
|
Installation of AIPS++ is under the control of a script called configure. One of exhale's jobs in creating a new base release is to install the latest version of the configure script in ãips++/code_ftp. Intending users of AIPS++ would ftp anonymously to their local consortium site and fetch the entire contents of tp/pub/aips++/code_ftp. In detail, the sequence would resemble the following:
yourhost% mkdir ~aips++ yourhost% chgrp aips2mgr ~aips++ yourhost% chmod 775,g+s ~aips++ yourhost% mkdir ~aips++/code yourhost% cd ~aips++/code yourhost% ftp baboon.cv.nrao.edu Connected to baboon.cv.nrao.edu. 220 baboon FTP server (SunOS 4.1) ready. Name (baboon.cv.nrao.edu:you): ftp 331 Guest login ok, send ident as password. Password:you@yourhost.there 230 Guest login ok, access restrictions apply. ftp> cd pub/aips++/code_ftp 250 CWD command successful. ftp> binary 200 Type set to I. ftp> prompt Interactive mode off. ftp> hash Hash mark printing on (8192 bytes/hash mark). ftp> mget * : lots of messages describing what ftp is fetching : ftp> quit 221 Goodbye. yourhost% chmod 544 configure yourhost% configure
Once configure has been activated the installation consists of answering a few questions, most of which have sensible default answers. configure first ensures that certain utilities that it needs are available (compress and GNU make). If they aren't it will fetch them from the consortium site and if necessary, install compress in the current directory. It then unloads any compressed tar files present in the current directory.
configure next installs the aipsinit scripts (see below) and constructs the ãips++/aipshosts database via a simple inbuilt editor. Once the host architectures, site-, and host-names are known, configure invokes aipsinit for itself and then creates the AIPS++ system directory tree for each architecture. With a bin directory now in existence, configure reinstalls compress if necessary, and likewise GNU make.
Before make can be invoked, however, the site-specific makedefs file must be defined. This contains definitions used by make for directories, compiler options and the like. Generic definitions are provided in ãips++/$ARCH/$VERS/makedefs but several of these have no sensible default and must be defined on a site-wide basis. If none already exists, configure installs a template makedefs file in ãips++/$ARCH/$VERS/$SITE and invites the installer to make the appropriate entries with a text editor in another window (or by suspending configure). When the user is satisfied, configure checks to make sure that all definitions have been made, and then repeats the process for the site-specific aipsrc file (see below).
At this point the system should have been bootstrapped to a state where a recursive make may be used to check-out all code and rebuild the system, and this configure now does.