|
Welcome to the Athena GNU Locker
|
The gnu
locker is a repository for software from the
Free Software Foundation which was released under the
GNU General Public License.
If you have comments or bug reports, or if
you would like us to update or add a piece of software, send mail
to the maintainers:
gnu@mit.edu
To run GNU programs conveniently under Athena, attach
this locker with the command attach gnu, or better yet
use the command add gnu to put it on your executable search path
as well as attaching it.
Topics:
The GNU locker is organized according to the current Athena conventions
(see man locker). Executables, libraries, and other
architecture-specific files are stored in subdirectories named after
each platform under the "arch" subdirectory. There are also symbolic links
'bin', 'gbin', and 'lib' at the top level which use the AFS @sys
value so they always point at the appropriate directories for your platform.
Accessing GNU programs: bin vs. gbin
Since many of the GNU programs have the same names as the programs they
replace in a standard commercial Unix such as Solaris or IRIX, we have
renamed them with a "g" prefix before the name, e.g.
gtar, gdiff, etc. Then, if you have the GNU locker executables
anywhere in your path, you can choose to
use a GNU program without worrying if the Solaris version comes first
in the path, and without typing the full filename. (See the
directions on attaching the locker for details.)
The directory gbin contains symbolic links to various GNU programs
without the leading "g" prefix, so if you want to use GNU programs in
preference to the operating system's versions,
just put /mit/gnu/gbin in
your path before the system binary directories. Note that these links do
not
(and never will) include
"ld", "cc", "as", and "make",
since compilation
tools often assume that those names refer to native tools. Also,
"finger" is excluded since the GNU version does not have the same
functionality as most vendor OSs' versions.
Gnuplot and other refugees
The GNU locker is intended only for software
from the
GNU project
of the
Free Software Foundation.
At some point the gnuplot program was mistakenly added; despite
its name it has nothing to do with the FSF. Programs that do not belong
in this locker have been migrated as follows:
- gnuplot
- Has moved to the gnuplot locker.
- ghostscript
- The latest version, released as Aladdin Ghostscript, can
be found in the ghostscript locker.
The doc directory contains documentation for the programs in this
locker, including man pages, info pages, and dvi files formatted for
printing.
Documentation can be found on the Web at:
http://web.mit.edu/gnu/doc/html/menu.html
To print out a GNU documentation dvi file, run the command
dvips -Pprintername /mit/gnu/doc/dvi/filename.dvi
Source
The src directory ideally contains source for all of the programs
installed in this locker on the supported platforms. The src/NOTES
subdirectory
contains notes about modifications made to the sources in order to get
them to work properly in the Athena environment. The src directory
is structured with lettered subdirectories; for instance, "gcc-2.7.2"
would be found in "src/g/gcc-2.7.2".
Each platform has a sub-volume under arch. There are several sub-volumes
for source (/mit/gnu/src/vol?) and a subvolume for builds
(/mit/gnu/.build). /mit/gnu/build should point to the build directory
for your platform.
Library data common to all platforms is stored in /mit/gnu/share.
Library data common to big-endian and little-endian platforms are
stored in arch/big-endian and arch/little-endian. Executables common
to all platforms are currently copied for each platform (they're
small).
All binaries are stripped. Ideally, libraries are built with symbols
(gcc -g -O) and not stripped, to aid in debugging programs which link
against them.
Ideally, binaries will not rely on @sys, for ease of migration to
other filesystems. In practice, some binaries currently rely on @sys;
to avoid this, when configuring packages, use "--prefix=/mit/gnu
--exec-prefix=/mit/gnu/arch/$ATHENA_SYS".
If you are reporting a bug with the compilers (gcc, g++) you should
include as many as the following as you can:
- The source file that caused the bug
- If gcc aborted, the error message it printed
- The arguments you gave to the compiler
- If the compiler generated incorrect code, a description of
what should have happened and what did happen
Always describe the platform where you encountered the bug and
provide a way to reproduce it if possible. Send bug reports
to
gnu@mit.edu
Comments and questions may be directed to:
gnu@mit.edu
Last modified on $Date: 2000/05/03 05:28:44 $ by $Author: lcs $