GNU's Bulletin, vol. 1 no. 13, June, 1992
Table of Contents
The GNU's Bulletin is the semi-annual newsletter of the
Free Software Foundation, bringing you news about the GNU Project.
Free Software Foundation, Inc. Telephone: (617) 876-3296
675 Massachusetts Avenue Electronic mail: firstname.lastname@example.org
Cambridge, MA 02139 USA
Michael Bushnell is working on the GNU operating system and
tar. Jim Blandy is preparing GNU Emacs
19, and Joseph Arceneaux is implementing active regions for a
future GNU Emacs release. Roland McGrath is polishing the C
library and maintains GNU
Tom Lord is writing a graphics library and working on Oleo, the GNU
spreadsheet. Brian Fox is improving various programs that he
has written including
library, BASH, and is writing the BASH Manual. Jan
Brittenson is working on the C interpreter and maintaining
finger. Mike Haertel is making GNU
compliant and beginning work on optical character recognition.
David MacKenzie maintains most of GNU's small utilities--more
programs than nearly everyone else combined.
Kathy Hargreaves and Karl Berry are making fonts (and
coordinating volunteers making fonts), developing utilities for dealing
with them, and working on Ghostscript. Melissa Weisshaus is
editing documentation and will work on the GNU Utilities Manual.
Noah Friedman is our system administrator. Lisa `Opus'
Goldstein continues to run the business end of FSF, with Gena
Lynne Bean assisting in the office. Spike MacPhee assists RMS
with legal assignments of software and other administrative tasks.
Robert J. Chassell, our Secretary/Treasurer, also handles our
publishing and is working on an introduction to programming in Emacs
Lisp, in addition to many other tasks.
Richard Stallman continues as a volunteer who does countless tasks,
such as C compiler maintenance and finishing the C Library
Volunteer Len Tower remains our on-line JOAT
(jack-of-all-trades), handling mailing lists and gnUSENET, information
Written and Edited by: Jan Brittenson, Noah S. Friedman,
Robert J. Chassell, Melissa Weisshaus, Richard Stallman,
and Leonard H. Tower Jr.
Illustrations: Etienne Suvasa
Japanese Edition: Mieko Hikichi and Nobuyuki Hikichi
The GNU's Bulletin is published twice annually. To get a copy, send
your request to the address on the first page. If you live in an area
served by the US Post Office, please also send a SASE
(Self-Addressed Stamped Number 10 Envelope), otherwise please include a
preprinted mailing label. A small donation to cover copying costs is
appreciated but not required.
Copyright (C) 1992 Free Software Foundation, Inc.
This page is licensed under a Creative
Commons Attribution-NoDerivs 3.0 United States License.
What Is the Free Software Foundation?
The Free Software Foundation is dedicated to eliminating restrictions on
copying, redistribution, understanding, and modification of computer
programs. We do this by promoting the development and use of free
software in all areas of computer use. Specifically, we are putting
together a complete integrated software system named "GNU" (GNU's Not
Unix) that will be upwardly compatible with Unix. Some large parts of
this system are already working, and we are distributing them
The word "free" in our name pertains to freedom, not price. You may or
may not pay a price to get GNU software. Either way, you have two specific
freedoms once you have the software: first, the freedom to copy the program
and give it away to your friends and co-workers; and second, the freedom to
change the program as you wish, by having full access to source code.
Furthermore, you can study the source and learn how such programs are
written. You may then be able to port it, improve it, and share your
changes with others. (If you redistribute GNU software, you may charge a
fee for the physical act of transferring a copy, or you may give away
Other organizations distribute whatever free software happens to be
available. By contrast, the Free Software Foundation concentrates on
development of new free software, working towards a GNU system complete
enough to eliminate the need for you to purchase a proprietary
Besides developing GNU, FSF distributes copies of GNU software and
manuals for a distribution fee, and accepts tax-deductible gifts to
support GNU development. Most of FSF's funds come from its distribution
The Board of the Foundation is: Richard M. Stallman, President;
Robert J. Chassell, Secretary/Treasurer; Gerald J. Sussman,
Harold Abelson, and Leonard H. Tower Jr., Directors.
What Is Copyleft?
The simplest way to make a program free is to put it in the public
domain, uncopyrighted. But this allows anyone to copyright and restrict
its use against the author's wishes, thus denying others the right to
access and freely redistribute it. This completely perverts the
To prevent this, we copyright our software in a novel manner. Typical
software companies use copyrights to take away your freedoms. We use
the copyleft to preserve them. It is a legal instrument that
requires those who pass on the program to include the rights to further
redistribute it, and to see and change the code; the code and rights
become legally inseparable.
The copyleft used by the GNU Project is made from a combination of a
regular copyright notice and the GNU General Public License (GPL).
The GPL is a copying license which basically says
that you have the freedoms discussed above. An alternate form, the
GNU Library General Public License (LGPL), applies to certain GNU
Libraries. This license permits linking the libraries into proprietary
executables under certain conditions. The appropriate license is
included in all GNU source code distributions and in many of our
manuals. We will also send you a printed copy upon request.
Note that the library license actually represents a strategic retreat.
We would prefer to insist as much as possible that programs based on GNU
software must themselves be free. However, in the case of
libraries, we found that insisting they be used only in free software
appeared to discourage use of the libraries rather than encouraging
If the library license does promote the further use and development of
free libraries by the developers of proprietary applications, we may
consider putting more of the GNU Project libraries under it.
We strongly encourage you to copyleft your programs and documentation,
and we have made it as simple as possible for you to do so. The details
on how to apply the GPL appear at the end of the GPL.
Free Software Support
The Free Software Foundation does not provide any technical support.
Although we create software, we leave it to others to earn a living
providing support because we would rather concentrate on the former
task. We see programmers as providing a service, much as doctors and
lawyers now do; both medical and legal knowledge are freely
redistributable entities for which the practitioners charge a
distribution and service fee.
We maintain a list of people who offer support and other consulting
services, called the GNU Service Directory. It is in the file
`etc/SERVICE' in the GNU Emacs distribution and `SERVICE' in
the GCC distribution. Contact us if you would like a printed copy or
wish to be listed in it.
If you find a deficiency in any GNU software, we want to know. We
have many Internet mailing lists for announcements, bug reports,
and questions. They are also gatewayed into USENET news as the
If you have no Internet access, you can get mail and USENET news via
UUCP. Contact a local UUCP site, or a commercial UUCP site such
P.O. Box 1206,
Menlo Park, CA 94026-1206
Phone: (415) 328-5615 or Fax: (415) 322-1753
UUNET Communications Services,
3110 Fairview Park Drive - Suite 570,
Falls Church, VA 22042
Phone: (703) 876-5050
When we receive a bug report, we usually try to fix the problem. While
our bug fixes may seem like individual assistance, they are not. Our
task is so large that we must focus on that which helps the community as
a whole, such as developing and maintaining software and documentation.
We do not have the resources to help individuals. If your bug
report does not evoke a solution from us, you may still get one from the
many other users who read our bug report mailing lists. Otherwise, use
the Service Directory.
So, please do not ask us to help you install the software or figure out
how to use it--but do tell us how an installation script does not work
or where the documentation is unclear.
"If I have seen farther, it is by standing on the shoulders of
Free Unix Emulator for Mach
Randall Dean at CMU is finishing up a free BSD-based Unix
emulator for Mach. It does not yet run reliably, but if it does become
robust well before the Hurd is ready we will probably use it to create
an early, completely free GNU system. We do not expect tape
distribution of this emulator before the next issue of the GNUs
Bulletin. Please don't ask us about this project; we will make
an announcement when it is ready.
Roland McGrath is porting the GNU C library to work with this
Berkeley Networking 2 Release
The FSF now offers the BSD Networking 2 release on tape (see "Berkeley
Networking 2 Tape" under "GNU Software Available Now").
Distribution Tapes Reorganized
Our software distribution has been reorganized. The old Compiler
tape has been split into a Languages and a Utilities tape. Some
software has also moved from the Emacs tape to the other two tapes.
In addition, we have a temporary Experimental tape. See "GNU
Software Available Now."
FSF Distributing on Exabyte Cassettes
We are now offering our software on 8mm Exabyte cassettes. For more
information, see "FSF Order Form".
New Binding for GNU Manuals
Several GNU manuals are now bound as soft cover books with a new
lay-flat binding technology. This allows you to open them so they
"lie flat" on a table without creasing the binding. Each book has an
inner cloth spine and an outer cardboard cover that will not break or
crease as an ordinary paperback will. Currently, the GAWK,
Bison, GDB, and Emacs Lisp Reference manuals have
this binding. All other GNU manuals are also bound so they lie flat
when opened, using other technologies.
GNU Fortran Mailing List
A mailing list exists for those interested in the Fortran front end
for GCC. To subscribe, ask:
email@example.com. Meanwhile, the
front end itself is rapidly approaching an alpha test state.
GNU in Russia Moves Forward
Progress is being made on the GNU Project in Russia. The "Center for
GNU Development" is translating GNU documentation into Russian.
Recently, they finished the first version of a Modula-2-to-C
translator. They are also working on an SQL database management
system and on other projects.
"If I have not seen farther, it is because giants were standing
on my shoulders."
Patent Reform Is Not Enough
by Richard Stallman
When people first learn about the problem of software patents, their
attention is often drawn to the egregious examples: patents that cover
techniques already widely known. These techniques include sorting a
collection of formulae so that no variable is used before it is
calculated (called "natural order recalculation" in spreadsheets), and
the use of exclusive-or to modify the contents of a bit-map display.
Focusing on these examples can lead some people to ignore the rest of
the problem. They are attracted to the position that the patent system
is basically correct and needs only "reforms" to carry out its own
But would correct implementation really solve the problem of software
patents? Let's consider an example.
In April 1991, software developer Ross Williams began publishing a
series of data compression programs using new algorithms of his own
devising. Their superior speed and compression quality soon attracted
The following September, when the FSF was about a week away from
releasing one of them as the new choice for compressing our distribution
files, use of these programs in the United States was halted by a newly
issued patent, number 5,049,881.
Under the current patent rules, whether the public is allowed to use
these programs (i.e., whether the patent is invalid) depends on whether
there is "prior art": whether the basic idea was published before the
patent application, which was on June 18, 1990. Williams' publication
in April 1991 came after that date, so it does not count.
A student described a similar algorithm in 1988--1989 in a class paper
at the University of San Francisco, but the paper was not published.
So it does not count as prior art under the current rules.
Reforms to make the patent system work "properly" would be no help
here. Under the rules of the patent system, this patent seems valid.
There is no prior art for it. It is not close to obvious, as the patent
system interprets the term. (Like most patents, it is neither
worldshaking nor trivial, but somewhere in between.) The fault is in
the rules themselves, not their execution.
In the US legal system, patents are intended as a bargain between
society and individuals; society is supposed to gain through the
disclosure of techniques that would otherwise never be available. It is
clear that society has gained nothing by issuing patent number
Under current rules, our ability to use Williams's programs depends on
whether anyone happened to publish the same idea before June 18, 1990.
That is to say, it depends on luck. This system is good for promoting
the practice of law, but not progress in software.
Teaching the Patent Office to look at more of the existing prior art
might prevent some outrageous mistakes. It will not cure the greater
problem, which is the patenting of every new wrinkle in the use
of computers, like the one that Williams and others independently
This will turn software into a quagmire. Even an innovative program
typically uses dozens of not-quite-new techniques and features, each
of which might have been patented. Our ability to use each wrinkle
will depend on luck, and if we are unlucky half the time, few programs
will escape infringing a large number of patents. Navigating the maze
of patents will be harder than writing software. As The
Economist says, software patents are simply bad for business.
If you'd like to do something, the easiest thing to do is to join the
League for Programming Freedom.
What Is the LPF?
The League for Programming Freedom (LPF) aims to protect the freedom
to write software. This freedom is threatened by "look-and-feel"
interface copyright lawsuits, and by software patents. The LPF does
not endorse free software or the FSF.
The League's members include programmers, entrepreneurs, students,
professors, the FSF, and even some software companies.
From the League membership form:
The League for Programming Freedom is a grass-roots
organization of professors, students, business people, programmers,
and users dedicated to bringing back the freedom to write programs.
The League is not opposed to the legal system that Congress
intended--copyright on individual programs. Our aim is to reverse
the recent changes made by judges in response to special interests.
Membership dues in the League are $42 per year for programmers, managers
and professionals; $10.50 for students; $21 for others.
To join, please send a check and the following information:
Your name and phone numbers (home, work or both).
The address to use for League mailings, a few each year (please indicate
whether it is your home address or your work address).
The company you work for, and your position.
Your email address, so the League can contact you for political action.
(If you don't want to be contacted for this, please say so, but please
give your email address anyway.)
Please mention anything about you which would enable your
endorsement of the LPF to impress the public.
Please say whether you would like to help with LPF activities.
The address is:
League for Programming Freedom
1 Kendall Square - #143
P.O. Box 9171
Cambridge, MA 02139
Phone: (617) 243-4091
If you haven't made up your mind yet, write to LPF for more information,
or send Internet mail to
LPF Ends Ashton-Tate Boycott
Ashton-Tate (now a subsidiary of Borland) has offered to drop its
"look-and-feel" lawsuit against Fox. In response, the League for
Programming Freedom has dropped its boycott of Ashton-Tate products.
U.S. Federal Database Bill
A bill before Congress, H.R. 2772, would have the Government Printing
Office (GPO) create a Wide Information Network for Data Online
(WINDO), allowing individual users to subscribe to a number of
Federal databases, including: the FDA Bulletin Board, the Economic
Bulletin Board, the SEC's EDGAR database of corporate disclosure
filings, the Patent and Trademark Office's Automated Patent System, the
"Federal Register," the "Congressional Record," the House of
Representatives' LEGIS system, the Library of Congress' SCORPIO
system, the Department of State press briefings and Congressional
Testimonies, and many other U.S. Federal government information systems.
The GPO would administer the service for a low user dissemination-based
charge, providing access through most common access methods, including
by dial-up modem and over the Internet. User feedback would be greatly
encouraged. Bill H.R. 2772 was introduced by Rep. Charlie Rose
(D-NC) in June 1991. To support the bill, write or call your
congressman. Also write or call Rep. Rose to show your support and
send a copy to the Taxpayer Assets Project. For more information on
WINDO, you can contact:
American Library Association Taxpayer Assets Project
Washington Office P.O. Box 19367
110 Maryland Avenue, NE Washington, DC 20036
Washington, DC 20002-5675 USA
USA Tel: (202) 387-8030
Tel: (202) 547-4440 Fax: (202) 234-5176
Fax: (202) 547-7363 Bitnet:
Joint Committee on Printing
818 Hart Senate Bldg.
Washington, DC 20510
Tel: (202) 224-5241
Fax: (202) 224-1176
Another Free Software Support Business
by Russ Nelson, Crynwr Software,
The Crynwr packet driver collection, a finalist in PC Magazine's 1991
Awards for Technical Excellence, is copylefted software. The packet
drivers are a mix of PC Ethernet drivers and shims to other driver
software. Packet drivers are used natively by nearly all TCP/IP
software and can also be used with Novell's NetWare, Banyan Vines, and
Performance Technology's PowerLAN. After nearly four years, the list of
contributors stretches almost two pages. My firm, Crynwr Software, six
months old, is the sole support for my family, selling packet driver
support. Crynwr Software is another example of a successful business
venture based on copylefted software.
"In the sciences, we are now uniquely privileged to sit side by side
with the giants on whose shoulders we stand."
The Hurd: the GNU Kernel Advances
Development is continuing on the kernel-related aspects of the GNU
Operating System. This job consists of writing a set of servers, called
the GNU Hurd, that run on top of the Mach 3 microkernel from CMU. The
Mach microkernel provides a task abstraction with multiple threads
within a single task and powerful IPC and virtual memory systems. Work
is proceeding well on our implementation of the BSD Fast Filesystem, and
we hope to be able to bootstrap a minimal system this summer.
One of the advantages to the GNU Hurd is that it allows ordinary users
to write programs which insert themselves into the directory hierarchy
in a secure fashion. Using this idea, we will eventually implement a
variety of interesting "filesystems." A simple example is transparent
FTP, but there are also ideas like a transparent tar archive. (Just
think, all you will need do is
cd into a tar archive and do an
ls, instead of remembering incantations like
foo.tar.) There are even stranger ideas people have thought up; this
design choice turns out to be surprisingly fruitful. This is a
characteristic of the Hurd which is not supported by any other free or
nearly-free operating systems, and only a very few commercial systems
(none of which look anything like Unix).
We are not sure at this point whether the initial alpha test release
will have network support in it; this will depend on staffing
considerations. If it does not, then implementing the network will be
the top priority after the alpha release. The plan is to write a
library which will enable network modules from a BSD kernel (many of
which are now free) to be "dropped in" and used with only minimal
modification, though more work would be needed to enable such a network
server to get maximal performance.
Source compatibility with 4.4 BSD and POSIX.1 will be provided by the
GNU C Library. In addition, binary compatibility will be provided on
some machines using the system call emulation facilities of Mach.
Further, a great number of functions, done in Unix by the kernel, will
be done in the C library. This allows users who dislike some of the
precise semantics of a system call to easily replace it in their
programs. Calls such as those which change signal state can be
implemented entirely in the library and become much faster as well.
We have a mailing list to discuss the design of Hurd. Experts in OS
design and seasoned Unix wizards are welcome to help hash out the
details of the interface.
A Small Way to Help Free Software
If you find that GNU software has been helpful to you, and in particular
if you have benefitted from having sources freely available, please help
support the spread of free software by telling others. For example, you
might say in published papers and internal project reports:
"We were able to modify the
fubar utility to serve our
particular needs because it is free software. As a result, we were able
to finish the XYZ project six months earlier."
Let users, management, and friends know! And send us a copy.
Project GNU Status Report
GNU Software Configuration Scheme
To allow GNU software to compile and run on a large number of platforms,
it is often necessary to include platform-specific code to handle
different situations. It is then useful to know the type of platform on
which you are going to build the software. We are now ironing out the
details of a uniform scheme for configuring GNU software packages in
order to compile them. This will make it possible to configure any and
all GNU software in the same way. In particular, all GNU software will
support the same naming scheme for machine types and system
The configuration scheme will enable you to configure a directory
containing several GNU packages with one command. When we have a
complete system, it will be possible to configure everything at once,
eliminating the need to learn how to configure each of the individual
programs that make up the GNU system.
For tools used in development, the configuration scheme lets you specify
both the host system and the target system, so you can configure and
build cross-development tools easily.
GCC Version 2 and GDB Version 4 support the new configuration scheme, as
do many of the smaller programs and collections. Over the coming year,
we will change our other software to support it.
Version 19 will enter beta test late this year. Among its new features
after change hooks, source-level debugging
of Emacs Lisp programs, X selection processing (including clipboard
selections), scrollbars, support for European character sets, floating
point numbers, per-buffer mouse commands, X resource manager
interfacing, mouse-tracking, Lisp-level binding of function keys,
multiple X windows (`screens' to Emacs), a new input system, and buffer
allocation, which uses a new mechanism capable of returning storage to
the system when a buffer is killed.
The input stream is now a sequence of Lisp objects, instead of a
sequence of characters. This allows a reasonable representation for
mouse clicks, function keys, menu selections, etc.
Thanks go to Alan Carroll and the people who worked on Epoch for
generating initial feedback to a multi-windowed Emacs, and to Eric
Raymond for help in polishing the Emacs 19 Lisp libraries.
Emacs 18 maintenance continues for simple bug fixes.
The GNU C compiler (GCC) version 1.40 is current; 1.41 is expected soon.
GCC supports both ANSI standard and traditional C, as well as the GNU
extensions to C.
Version 1 is stable, but still maintained with bug fixes. It supports
these CPU types: 680x0, VAX, 32x32, 8086, SPARC (Sun-4), SPUR,
Convex, MIPS, Tahoe, Pyramid, and Alliant. It supports both
a.out and COFF format object files when used with a suitable
Version 2 of GCC is in beta test (see "Contents of the Experimental
Tape") and includes front-ends for C++ and Objective-C. New front
ends are being developed, but they are not part of GCC yet. A front end
for Ada is being funded through the Ada 9X standards committee. Since
it is a quite complex language, we expect completion to take a while. A
front end for Fortran is now being integrated, but this will also not be
available soon. Volunteers are developing front ends for Modula-3 and
Pascal. There are mumblings about other languages, but no one has
volunteered to do Cobol yet.
Steve Chamberlain and others at Cygnus Support have rewritten the
binary utilities (including the linker). These are now based on the
same Binary File Descriptor library used by GDB. All the tools can be
run on a host that differs from the target (e.g. cross-linking is
supported). Furthermore, various forms of COFF and other object file
formats are supported. A tool can deal with object files in multiple
forms at once. For example, the linker can read object files using two
different formats, and write the output in a third format. The linker
interprets a superset of the AT&T Linker Command Language, which allows
very general control over where segments are placed in memory.
Version 1.94 is currently in beta test. Major changes are not expected.
firstname.lastname@example.org, coordinates the release.
Roland McGrath continues to work on the C Library. It now conforms to
ANSI C-1989 and POSIX.1-1990, and work is in progress on POSIX.2 and
Unix functions (BSD and System V). In the Hurd, it will do much of what
the system calls do in Unix. Roland is working on this code and has
written alot of it already. Mike Haertel has written a fast
malloc which wastes less memory than the old GNU
The GNU regular-expression functions (
regex) now mostly conform
to the POSIX.2 standard. A manual for the library (including the
"system calls") is mostly written.
stdio lets you define new kinds of streams, just by writing a few
C functions. The
fmemopen function uses this to open a stream on a
string, which can grow as necessary. You can define your own
formats to use a C function you write; and there is a way to safely use
format strings from user input, for example to implement a
printf-like function for another programming language. Extended
getopt functions are already used to parse options, including long
options, in many GNU utilities.
Version 1.03 runs on Sun-3 & Sun-4 (SunOS 4.1) and HP 9000/300 (4.3 BSD).
Version 1.04 will include a complete port for MIPS DECstations (Ultrix
4.2), and improved support for the i386/i486 (System V & BSD).
The GNU source-level C and C++ debugger, GDB, is now being
distributed along with the GNU C Compiler.
GDB Version 4.5 is in beta test. New machine ports include the IBM
RS/6000, AMD 29000, and Intel 960. Object files and symbol tables are
now read via a Binary File Descriptor library, which allows a single
copy of GDB to debug programs of multiple object file types such as
a.out and COFF. Other new features include improvements to the
command language, watchpoints (breakpoints triggered when the value of
an expression changes), exception handling (when used with GCC version
2) and support for SunOS shared libraries and C++ multiple
Aubrey Jaffer is preparing a new release of JACAL, a symbolic
mathematics system for the simplification and manipulation of equations
and single-and-multiple-valued algebraic expressions constructed of
numbers, variables, radicals, and algebraic functions, differential and
finite differential operators, and holonomic functions. In addition,
vectors and matrices of the above objects are included.
JACAL runs under either Common Lisp or Scheme. A version of Scheme
(IEEE P1178 and R4RS compliant) written in C comes with JACAL. It runs
under VMS, MS-DOS, Unix, and similar systems. Pre-release source is
available for anonymous FTP from
`/archive/scm' in `jacal0-4.tar.Z' and `scm3c13.tar.Z'.
The FSF is not distributing JACAL on tape yet. To receive an IBM PC
floppy disk with the source and executable files, send $60.00 ($65.00
for i386) to: Aubrey Jaffer, 84 Pleasant St., Wakefield MA 01880
The current version of Ghostscript is 2.4.1. Features include: the
ability to specify device resolution and output file (including piping)
from the command line; many new output devices and file formats,
including PBM/PGM/PPM, GIF, and PCX; many more Postscript Level 2
facilities; improved character rendering; and incorporation of the
standard Adobe font metrics into the Ghostscript fonts.
Ghostscript 2.4.1 accepts commands in Postscript and executes them by
drawing on an X window, writing a file that you can print directly, or
writing directly to a printer. GNU volunteer Tim Theisen,
email@example.com, has created a previewer for
multi-page files, called Ghostview, on top of Ghostscript.
Ghostscript includes a C-callable graphics library (for client programs
that do not want to deal with the Postscript language). It also
supports IBM PCs and compatibles with EGA, VGA, or SuperVGA graphics
(but do not ask the FSF staff any questions about this; we do not use
James Clark has completed
troff and related
programs). Version 1.05 is now available (see "Contents of Utilities
groff is written in C++. It can be compiled with
GNU C++ Version 1.40.3 or later.
Future bugs in
groff will be fixed, but no new development is
currently planned. However,
groff users are encouraged to
continue to contribute enhancements. Most needed are complete
Texinfo documentation, a
grap emulation (a
preprocessor for typesetting graphs), a page-makeup postprocessor
pm (see Computing Systems, Vol 2, No. 2), and
an ASCII output class for
pic so that
pic can be
integrated with Texinfo.
James would like to thank everybody who has contributed bug reports.
Please continue to send them to
GNU Graphics is a set of programs which produce plots from ASCII or
binary data. It supports output to Tektronix 4010, Postscript, and the
X Window System or compatible devices.
A new version of GNU Graphics has begun alpha testing. Improvements
include: a revised manual; new features in
plot2ps; support for output in ln03 and TekniCAD TDA file
formats; a replacement for the
spline program; examples of shell
plot; the addition of a statistics
toolkit; and the use of
configure for installation.
Existing ports need retesting. Contact Rich Murphey,
Rich@rice.edu, if you can help test/port it to anything other
than a SPARCstation.
The Texinfo 2 package includes an enhanced Texinfo mode for GNU Emacs,
new versions of the formatting utilities, and the second edition of the
Texinfo Manual (which is more complete than the first edition and
describes over 50 new commands). Texinfo mode now includes commands for
automatically creating and updating nodes and menus, a tedious task when
done by hand. New utilities include
makeinfo, a standalone
info, a standalone Info reader. Both are written
in C and are independent of GNU Emacs. Texinfo 2 is in late beta test.
A GNU Standard on Suns?
Sun Microsystems was one of the pioneers of so-called
"open systems". They are now leading the industry in a new way: they
are the first major Unix workstation vendor to announce that they will
not ship a C compiler with their Unix operating system. Other Unix
workstation vendors have announced that they will follow suit.
Sun's decision to remove their compiler has created a unique opportunity
to make GNU C the new standard C compiler for Sun workstations.
Cygnus Support, in cooperation with the Free Software Foundation
and other free software developers, has announced plans to port GNU C
and other required software (GNU
gdb, and possibly
ld) to the Solaris platform.
Cygnus is looking for 150 subscribers, each of them to contribute
$2000 (about the cost of a compiler license from Sun for three CPUs),
to fund the necessary work. (Subscribers will also get commercial
support for a year.) The results, when completed, will be free
software like the rest of the GNU system. Also, $75,000 of the funds
raised is to be donated to the FSF.
This is the first attempt to raise funds for free software development
by asking for users to subscribe in advance. For more info,
contact Cygnus Support at (415) 322-3811 or send mail to
Andrew Toolkit Stays Free
The Andrew Toolkit is both an extensible, object-oriented toolkit for
graphical user interfaces and a package of applications. The most
widely-used application is the Andrew Message System (AMS). The
Toolkit is distributed on FSF's `optional' X Windows tape.
Not long ago, several people asked whether the Toolkit would stay free.
It will. The Andrew Toolkit Consortium plans to continue to make
versions of the Toolkit and the AMS freely usable and distributable.
However, there is (as there has always been) a catch: members of the
Consortium get updates sooner and more frequently than the rest of us.
This provides Consortium members with another incentive to continue as
GNU in Japan
firstname.lastname@example.org, and Nobuyuki Hikichi,
email@example.com, continue to work on the GNU Project in
Japan. They translate GNU information, write columns, request
donations, and consult about GNU. They have translated Version 1 of the
GNU General Public License into Japanese.
Japanese versions of Emacs and Epoch are available. Both of them,
nemacs (Nihongo Emacs) and
nepoch (Nihongo Epoch), are
widely used in Japan.
Mule (the MULtilingual Enhancement of GNU Emacs) is a version of Emacs
that can handle many character sets at once. Eventually, the features
it provides will be merged into the FSF version of Emacs. Ken'ichi
firstname.lastname@example.org, is beta testing MULE; you can FTP
If you can, please order GNU software directly from the FSF; every 150
tape orders allows FSF to hire a programmer for a year to create more
free software. Otherwise, many groups in Japan are distributing GNU
software, including JUG (a PC user group), Nikkei Business
Publications and ASCII (publishers), and the Fujitsu FM Towns users
group. Anonymous UUCP is also now available in Japan; for more
email@example.com. The FSF does not
The Village Center, Inc. has printed a Japanese translation of the
GNU Emacs Lisp Reference Manual and also uploaded the Texinfo
source to various bulletin boards. They are donating part of the
revenue generated by distributing the manual to FSF. Their address is:
Kanda Amerex Bldg. 2F 1-16, 3-Chome, Misaki-Cho,
Chiyoda-ku, Tokyo 101.
A group connected with the commercial personal computer network in Japan
is writing and distributing a copylefted hardware (circuit diagram)
design and associated software that uses a MIPS-architecture based CPU.
The OS, called
t2, is a subset of Unix using GCC and
GDB as the system's compiler and debugger.
GNU Software Support Company in Japan
People in Japan can now contact a company for GNU software support; the
company is named Wingnut (Fax only: +81-3-3954-5174). The
organizers were inspired by the GNU Manifesto. Wingnut will provide two
services: porting and customizing GNU software, and answering technical
questions (including how to install the software).
"In computer science, we stand on each other's feet."
GNU manuals are intended to explain the underlying concepts, describe
how to use all the features of each program, and give examples of
command use. GNU documentation is distributed as Texinfo source files,
which yield both typeset hardcopy and on-line hypertext-like
presentation via the menu-driven Info system. The manuals, provided
with our software, are also available in hardcopy; see the "FSF Order
Form" inside the back cover.
The Emacs Manual describes the use of GNU Emacs. It also explains
advanced features, such as outline mode and regular expression search,
and how to use special modes for programming in languages like C and
The Emacs Lisp Reference Manual covers the GNU Emacs Lisp
programming language in great depth, including data types, control
structures, functions, macros, syntax tables, searching and matching,
modes, windows, keymaps, byte compilation, markers, and the operating
The Emacs Calc Manual includes both a tutorial and a reference
manual for Calc. It describes how to do ordinary arithmetic, how to use
Calc for algebra, calculus, and other forms of mathematics, and how to
The Texinfo Manual explains the markup language used to generate
both the online Info documentation and hardcopies. It tells you how to
make tables, lists, chapters, nodes, indexes, cross references, how to
use Texinfo mode in GNU Emacs, and how to catch mistakes.
The GDB Manual explains how to use the GNU Debugger, including how
to run your program under debugger control, how to examine and alter
data, how to modify the flow of control within the program, and how
to use GDB through GNU Emacs.
The GAWK Manual describes how to use the GNU implementation of
awk. It is written for someone who has never used
describes all the features of this powerful string manipulation
The Bison Manual teaches how to write context-free grammars that
convert into C-coded parsers. You need no prior knowledge of parser
The Make Manual describes GNU
make, a program used to rebuild
parts of other programs. The manual covers writing `makefile's,
which specifies how a program is to be compiled and its dependencies.
The Termcap Manual, often described as "Twice as much as you ever
wanted to know about Termcap," details the format of the
database, the definitions of terminal capabilities, and the process of
interrogating a terminal description. This manual is primarily for
Project Gutenberg Looks for Volunteers
Project Gutenberg encourages the creation and distribution of English
language electronic texts. Their goal is to provide a collection of
10,000 of the most used books by 2001. They need a few volunteers to
help find copyright information about the books they wish to use as
sources for electronic editions.
If you want to help with this (or in any other way), please contact
Michael S. Hart
Project GNU Wish List
Wishes for this issue are for:
Volunteers to distribute this Bulletin at trade shows and technical
conferences. Please call the phone number on the front cover to make
Disk drives to give us more space to develop our software.
One 386 or 486 PC-AT compatible with at least 200 meg of hard disk and
an Ethernet card.
A Sun QIC-150 cartridge tape drive; a 300+ meg SCSI disk for a
Sun-3; a 300+ meg SCSI disk for a SONY News workstation; a floppy
disk copying and verification machine; a 19" equipment rack; an Exabyte
tape drive; Sun-3 workstations; core memory for and a board to add a
monochrome monitor alongside a color monitor for a Sun-4/110
workstation; and hard disks for IBM RTs.
Companies to lend us capable programmers and technical writers for at
least six months. True wizards may be welcome for shorter periods, but
we have found that six months is the minimum time for a good programmer
to finish a worthwhile project.
Professors who might be interested in sponsoring or hosting research
assistants to do GNU development, with FSF support.
Volunteers to help write programs and documentation. Send mail to
firstname.lastname@example.org for the task list and coding
Speech and character recognition software and systems (if the devices
aren't too weird), with the device drivers if possible. This would help
the productivity of a few partially disabled programmers we know.
New quotes and ideas for articles in the GNU's Bulletin. We
particularly like to highlight organizations involved with free
Copies of newspaper and journal articles mentioning the GNU Project or
GNU software. Send these to the address on the front cover, or send a
Money, as always. Please remember, donations are tax-deductible. With
the latest donations, we have been able to expand our staff again. With
the increased staff we have an even greater need for donations.
One way to give us a small amount of money is to order a distribution
tape or two. This may not count as a donation for tax purposes, but it
can qualify as a business expense.
Please Support Free Software
If you believe in free software and you want to make sure there
is more in the future---please support the efforts of the FSF with
Your tax-deductible donation will greatly help us reach our goals.
$500 $250 $100 $50 other $______
Circle the amount you are donating, tear off this page, and send it with
your donation to:
Free Software Foundation, 675 Mass. Ave., Cambridge, MA 02139 USA
How to Get GNU Software
All the software and publications from the Free Software Foundation are
distributed with permission to copy and redistribute. The easiest way
to get GNU software is to copy it from someone else who has it.
If you have Internet access, you can get the latest software via
anonymous FTP from the host
prep.ai.mit.edu (the IP address
126.96.36.199). Get file
`/pub/gnu/GETTING.GNU.SOFTWARE' for more information.
If you cannot get the software one of these ways, or would like to
contribute some funds to our efforts and receive the latest versions, we
distribute tapes for a copying and distribution fee (see the "FSF Order
There are also third party groups that distribute our software; they do
not work with us, but have our software in other forms. For your
convenience we list some of them here (also see "Free Software for
Microcomputers"). Please note that the Free Software Foundation is
not affiliated with them in any way and is not responsible for
either the currency of their versions or the swiftness of their
These TCP/IP Internet sites provide GNU software via anonymous FTP
anonymous, password: your name,
archie.au, utsun.s.u-tokyo.ac.jp, ftp.cs.titech.ac.jp, ugle.unit.no,
ftp.stacken.kth.se, sunic.sunet.se, isy.liu.se, ftp.win.tue.nl,
ftp.informatik.tu-muenchen.de, ftp.diku.dk, ftp.eunet.ch, nic.funet.fi,
ftp.eu.net, labrea.stanford.edu, cc.utah.edu (VMS GNU Emacs),
jaguar.cs.utah.edu, ftp.cs.widener.edu, wuarchive.wustl.edu,
uxc.cso.uiuc.edu, mango.rsmas.miami.edu (VMS GCC),
gatekeeper.dec.com, and ftp.uu.net (under `/packages/gnu').
Those on the SPAN network can ask rdss::corbet.
Those on JANET can look under
You can get some GNU programs via UUCP. Ohio State University posts
their UUCP instructions regularly to newsgroup
USENET. The following people will send you information via electronic
email@example.com, firstname.lastname@example.org, acornrc!bob,
email@example.com, and firstname.lastname@example.org
For those without Internet access, see the section entitled "Free
Software Support" for information on receiving electronic mail via
GNU Software Available Now
We offer Unix software source distribution tapes in
on the following media: 1600 bpi 9-track reel tape, 8mm Exabyte
cartridges, Sun QIC-24 cartridges, Hewlett-Packard 16-track
cartridges, and IBM RS/6000 1/4" cartridges (an Emacs binary is also
on the RS/6000 tape). We also offer VMS tapes for GNU Emacs and the
GNU C compiler that include sources and VMS executables.
The contents of the various 9-track and cartridge tapes for Unix systems
are the same (except for the RS/6000 Emacs tape). Only the media are
different (see the "FSF Order Form"). Documentation comes in Texinfo
format. The GNU software tapes include both
Version numbers listed by program names were current at the time this
Bulletin was published. When you order a distribution tape, some of the
programs might be newer, and therefore the version number higher.
Contents of the Emacs Tape
The software on this release tape is considered fairly stable, but as
always, we welcome your bug reports. Some of the software that has been
on this tape in the past has moved to the Languages and Utilities
GNU Emacs 18.58
In 1975, Richard Stallman developed the first Emacs, an extensible,
customizable real-time display editor. GNU Emacs is his second
implementation. It's the first Emacs for Unix systems that offers true
Lisp--smoothly integrated into the editor--for writing extensions, and
provides a special interface to MIT's X Window System. In addition to
its powerful native command set, extensions which emulate other popular
editors are distributed: vi, EDT (DEC VMS editor), and Gosling (aka
Unipress) Emacs. It is described by the GNU Emacs Manual and the
GNU Emacs Lisp Reference Manual, which come with the software. A
reference card is available.
GNU Emacs 18.58 runs on many Unix systems: Alliant, Altos 3068, Amdahl
(UTS), Apollo, AT&T (3B machines & 7300 PC), Aviion, CCI 5/32 & 6/32,
Celerity, Convex, Digital (DECstation 3100 & 5000 (Pmaxes), VAX (BSD,
System V, or VMS)), Motorola Delta (System V/68 release 3), Dual, Elxsi
6400, Encore (DPC, APC, & XPC), Gould, HP (9000 series 200, 300, 700, &
800, but not series 500), HLH Orion 1/05, IBM (RT/PC (4.2 & AIX), PS/2
(AIX (386 only)) & RS/6000 (AIX)), Integrated Solutions (Optimum V with
68020 & VMEbus), Intel 80386 (BSD, Microport, System V, Xenix & PS/2
(for MS-DOS see "Free Software for Microcomputers")), Iris (2500, 2500
Turbo, & 4D), LMI (Nu), Masscomp, MIPS, National Semiconductor 32000,
NCR (Tower 32), Nixdorf Targon 31, Plexus, Prime EXL, Sequent (Balance &
Symmetry), SONY News, Stride (system release 2), all Suns (including
386i), Stardent 1500 & 3000, Tahoe, Tandem Integrity S2, Tektronix
(NS32000 & 4300), Texas Instruments (Nu), Titan P2 & P3, Ustation E30
(SS5E), & Whitechapel (MG1).
GNU Calc 2.02
Calc (written by Dave Gillespie in Emacs Lisp) is an extensible,
advanced desk calculator and mathematical tool that runs as part of GNU
Emacs. It comes with the Calc Manual, which serves as a tutorial
and reference. If you wish, you can use Calc only as a simple
four-function calculator, but it provides additional features including
choice of algebraic or RPN (stack-based) entry, logarithms,
trigonometric and financial functions, arbitrary precision, complex
numbers, vectors, matrices, dates, times, infinities, sets, algebraic
simplification, differentiation, and integration.
MIT Scheme 7.0 and Yale T 3.1
Scheme is a simplified, lexically-scoped dialect of Lisp. It was
designed at MIT and other universities to teach students the art of
programming and to research new parallel programming constructs and
compilation techniques. MIT Scheme is written in C and the interpreter
runs on many Unix systems. It conforms to the "Revised^3 Report On the
Algorithmic Language Scheme" (MIT AI Lab Memo 848a), for which TeX
source is included.
T is a variant of Scheme developed at Yale University; it is intended
for production use in program development. T contains a native-code
optimizing compiler that produces code that runs at speeds comparable to
the speeds of programs written in conventional languages. It runs on
BSD VAXen, 680x0 systems, SPARCs, and MIPS R2000 workstations (including
the DECstation 3100), & NS32000 machines (including the Encore
Multimax). T is written in itself and cannot be bootstrapped without a
binary (included), but it is great if you can use it. Some
documentation is included.
Texinfo is a set of utilities that generate printed manuals and online
hypertext-style manuals (called `Info'). The late beta-test Texinfo 2
package contains enhancements to the current suite and a manual.
texi2roff, written by Beverly Erlebacher, translates GNU Texinfo
files so that they can be printed by the
-me macro packages. It
is included on all Unix tapes so people without TeX (but who have
[gnt]roff) can print out GNU documentation.
Data Compression Software
Some of the contents of our tape distribution are compressed, which is
currently indicated by a `.Z' suffix. We include software on the
tapes to compress/decompress these files. Due to patent troubles with
compress, we will be switching to another compression
algorithm--as soon as we find one that is safe.
The online distribution on
prep.ai.mit.edu will be changed
first to give the new program a trial period. Each tape includes the
program that will uncompress the compressed files on it.
Contents of the Languages Tape
This tape contains programming language tools: compilers, interpreters,
and related programs (parsers, conversion programs, debuggers, etc.).
Many of these programs were on the Compiler tape, which no longer
The GNU C compiler is a fairly portable optimizing compiler which
performs automatic register allocation, common sub-expression
elimination, invariant code motion from loops, induction variable
optimizations, constant propagation and copy propagation, delayed
popping of function call arguments, tail recursion elimination,
integration of inline functions, and frame pointer elimination, plus
many local optimizations that are automatically deduced from the machine
GCC supports full ANSI C, traditional C, and the GNU C extensions. It
generates good code for the 32000, 680x0, 80386, Alliant, Convex, Tahoe
& VAX CPUs, and for these RISC CPUs: i860, Pyramid, SPARC, & SPUR. The
MIPS RISC CPU is also supported. Other supported systems include: 386
(AIX), Alliant FX/8, Altos 3068, Apollo 68000/68020 (Aegis), AT&T 3B1,
Convex C1 & C2, DECstation 3100 & 5000, DEC VAX, Encore MultiMax
(NS32000), Genix NS32000, Harris HCX-7 & HCX-9, HP-UX 68000/68020, HP
(BSD), IBM PS/2 (AIX), Intel 386 (System V, Xenix, BSD, but not MS-DOS),
Iris MIPS machine, ISI 68000/68020, MIPS, NeXT, Pyramid, Sequent Balance
(NS32000), Sequent Symmetry (i386), SONY News, Sun (2, 3 (optionally
with FPA), 4, SPARCstation, & Sun-386i). See "Project GNU Status
Report" for more details.
A good programmer will be able to make a cross compiler on most of these
systems to cross-compile to most of these architectures. Most of the
work will be with the compiler support tools, not GCC itself.
The GCC Manual is included with the compiler. The manual (not
yet on our order form) describes how to run and install the GNU C
compiler, and how to port it to new processors. It describes new
features and incompatibilities of the compiler, but people not familiar
with C will also need a good book on the C programming language.
libg++ 1.39.0, and NIH Class Library
G++ is a set of changes for GCC that compiles C++, the
well-known object-oriented language. As far as possible, G++ is
kept compatible with the evolving draft ANSI standard, but not with
cfront (the AT&T compiler), as
cfront has been diverging
from ANSI. G++ comes with the GNU G++ User's Guide (not
yet published on paper). G++ compiles source quickly, provides good
error messages, and works well with GDB. As G++ depends on GCC, it
must be used with a specific numbered version of GCC.
The GNU C++ library,
libg++, is an extensive, documented
collection of C++ classes and support tools for use with G++.
The NIH Class Library (formerly known as "OOPS", Object-Oriented
Program Support) is a portable collection of classes similar to those in
Smalltalk-80 that has been developed by Keith Gorlen of NIH, using the
C++ programming language.
GAS 1.38.1, binutils 1.9,
dld 3.2.3, and COFF
The GNU assembler (GAS) is a fairly portable, one pass assembler that is
almost twice as fast as Unix
as and works for 32x32, 680x0,
80386, SPARC (Sun-4), and VAXen.
We have free versions of
strip. The GNU linker
is fast, and is the only linker with source-line numbered error messages
for multiply-defined symbols and undefined references.
dld is a dynamic linker written by W. Wilson Ho. Linking your
program with the
dld library allows you to dynamically load
object files into the running binary.
The entire suite of GNU software tools can be run on System V, replacing
COFF entirely. The GNU tools can operate on BSD object files with a
COFF header the System V kernel will accept.
supplied for converting standard libraries to this format.
flex 2.3.7 and Bison 1.18
flex is a mostly-compatible replacement for the Unix
scanner generator, written by Vern Paxson of the Lawrence Berkeley
flex generates far more efficient scanners than
Bison is an upwardly compatible replacement for the parser generator
yacc, with additional features. The Bison Manual comes
with the software.
make 3.62, GDB 3.5, and
make has most of the features of the BSD and System V
make as well as many of our own extensions, and
complies with POSIX.2. GNU extensions include parallelism, conditional
execution, and text manipulation. Version 3.62 of GNU
fairly stable. The Make Manual comes with the source.
GDB 3.5, the GNU debugger, runs under BSD 4.2/4.3 on VAXen and Suns (2,
3, 4, & SPARCstation), Altos, Convex, HP 9000/370 (BSD), HP 9000/320
(HP/UX), System V 386 systems (with either GNU or native object file
format), ISI Optimum V, Merlin under Utek 2.1, SONY News, Gould NPL & PN
machines, Pyramid, Sequent Symmetry (a 386-based machine), and Encore
MultiMax under Umax 4.2.
GDB features incremental reading of symbol tables (for fast startup and
less memory use), command-line editing, interactive function calling in
the program being debugged, remote debugging over a serial line, a value
history, and user-defined commands. It can be used to debug C, C++,
and Fortran programs. The GDB Manual includes a reference
indent is the GNU-modified version of the freely-redistributable
BSD program. It formats C source according to GNU coding standards by
default, though the original default and other formats are available as
GAWK 2.13.2, Smalltalk 1.1.1, and
GAWK is upwardly compatible with the System V Release 4 version of
awk. The GAWK Manual comes with the software.
GNU Smalltalk is an interpreted object-oriented programming language
system written in portable C. Features include an incremental garbage
collector, a binary image save capability, the ability to invoke
user-written C code and pass parameters to it, a GNU Emacs editing mode,
optional byte-code compilation tracing and byte-code execution tracing,
and automatically loaded per-user initialization files.
Larry Wall has written a fast interpreter named
combines the features of
sh, and C. It
has all of the capabilities of the these programs, as well interfaces to
many system calls and C library routines (including the TCP/IP
gperf is a "perfect" hash-table generation utility. There are
actually two versions of
gperf, one written in C and one in
C++. Both will produce hash functions in either C or C++.
ae works with GCC to produce more complete profiling
f2c converts Fortran--77 source files into C or C++.
gdbm 1.5 and
gdbm library is the GNU replacement for the standard
gdbm supports both styles
but does not need sparse database formats (unlike its Unix
GNU MP (
gmp) is a library for arbitrary precision arithmetic,
operating on signed integers and rational numbers. It has a rich set of
functions, all with a regular interface.
texi2roff 2.0 and Texinfo 2.14
These packages are the same as the ones on the Emacs tape.
Contents of the Utilities Tape
This tape includes the programs written by the GNU Project (as well as
some third-party software) that are not on the other two tapes. For the
most part, they consist of smaller utilities and miscellaneous
applications. As usual, bug reports are welcome. Many of these
programs were on the old Emacs tape and the now defunct Compiler tape.
groff 1.05, and
The GNU Shell, BASH (for Bourne Again SHell), is compatible with the
sh and offers many extensions found in
ksh. BASH has job control,
csh-style command history, and
command-line editing (with Emacs and
vi modes built-in and the
ability to rebind keys). BASH should compile on most systems.
groff is a document formatting system, which includes
macros, as well as drivers for Postscript, TeX dvi format, and
typewriter-like devices. Also included is a modified version of the
-me macros and an enhanced version of the
gptx is the GNU version of
ptx, a permuted index
generator. Among other things, it can produce readable "KWIC"
(KeyWords In their Context) without the need of
nroff, and there
is an option to produce TeX-compatible output.
tar 1.10 and
tar includes multivolume support, the ability to archive
sparse files, automatic archive compression/decompression, remote
archives, and special features to allow
tar to be used for
incremental and full backups.
cpio is an alternative archive format to
fgrep 1.1, and
[ef]grep programs are GNU's versions of the
Unix programs of the same name. They are much faster than the
traditional Unix versions.
patch is Larry Wall's program to take
diff's output and apply those differences to an original file to
generate the patched version.
RCS 5.6 and CVS 1.3
The Revision Control System, RCS, is used for version control and
management of software projects. When used with GNU
versions of RCS can handle binary files (executables, object files,
8-bit data, etc). The Concurrent Version System, CVS, manages software
revision and release control in a multi-developer, multi-directory,
multi-group environment. It works best on top of RCS Versions 4 and
above, but will parse older RCS formats with the loss of CVS's fancier
features. See Berliner, Brian, "CVS-II: Parallelizing Software
Development," Proceedings of the Winter 1990 USENIX Association
find 3.5, fileutils 3.2, shellutils 1.6, and
find is used frequently both interactively and in shell scripts
to find files that match certain criteria and perform arbitrary
operations on them.
The "fileutils" are file manipulation utilities:
The "shellutils" are small commands used on the command
line or in shell scripts:
The "textutils" programs manipulate textual data:
Ghostscript 2.4.1, Ghostview 1.3, fontutils 0.4, and
Ghostscript is GNU's graphics language that is almost fully compatible
with Postscript (see "Project GNU Status Report"). Ghostview provides
an X11 user interface for the Ghostscript interpreter. Ghostview and
Ghostscript function as two cooperating programs, Ghostview creates the
viewing window and Ghostscript draws in it.
The "fontutils" can create fonts for use with Ghostscript or TeX,
starting with a scanned type image and converting the bitmaps to
outlines. They also contain general conversion programs and other
gnuplot is an interactive program for plotting mathematical
expressions and data. Oddly enough, the program was neither written nor
named for the GNU Project, the name is a coincidence.
sed 1.08, and
m4 is an implementation of the traditional Unix macro
processor and is mostly System V Release 4 compatible, although it has
some extensions (for example, it handles more than 9 positional
parameters to macros).
m4 also has built-in functions for
including files, running shell commands, doing arithmetic, etc.
sed is a stream-oriented version of
ed, used to manipulate
bc is an interactive algebraic language with arbitrary precision.
bc was implemented from the POSIX P1003.2 draft standard, but
it has several extensions including multi-character variable names, an
else statement, and full Boolean expressions.
screen 2.1c, and
elvis is a clone of the
ex Unix editor. It
supports nearly all of the
ex commands in both visual
and line mode.
elvis runs under BSD, System V, Xenix, Minix,
MS-DOS, and Atari TOS. It should be easy to port to many other
screen is a terminal multiplexor that allows you to handle
several independent "screens" (ttys) on a single physical terminal.
Each virtual terminal emulates a DEC VT100 plus several ANSI X3.64 and
ISO 2022 functions.
less is a paginator similar to
pg but with
various features (such as the ability to scroll backwards) that most
tput 1.0, and Termcap 1.0
time is used to report statistics (usually from a shell) about
the amount of user, system, and real time used by a process.
tput is a portable way to allow shell scripts to use special
terminal capabilities. It uses the
termcap database, rather than
The GNU Termcap library is a drop-in replacement for
on any system. It does not place an arbitrary limit on the size of
termcap entries, unlike most other
Included is extensive documentation in Texinfo format.
MandelSpawn 0.06, GNU Chess 3.1, NetHack 3.0, and GnuGo
MandelSpawn is a parallel Mandelbrot program for the MIT X Window
System. GNU Chess has text and X display interfaces. NetHack is a
display-oriented adventure game similar to Rogue. GnuGo plays the game
of Go (Wei-Chi); it is not yet very sophisticated.
texi2roff 2.0, Texinfo 2.14, and
texi2roff and Texinfo are the same as the ones on the
make is the same as the one on the Languages tape.
Contents of the Experimental Tape
This tape includes software that is currently in beta test and is
available for people who are feeling adventurous. Some of the software
already has released versions on the distribution tapes. This tape is
being offered for a limited time; as the programs become stable, they
will replace older versions on other tapes. Please send bug reports to
the appropriate addresses (listed on the tape in the notes for each
New features in GCC Version 2 include instruction scheduling, loop
unrolling, filling of delay slots, leaf function optimization, optimized
multiplication by constants, and a certain amount of common
subexpression elimination (CSE) between basic blocks. (Not all of the
supported machine descriptions provide for scheduling or delay slots.)
Function-wide CSE has been written, but needs to be cleaned up before it
can be installed. Position-independent code is supported on the 88000
and SPARC, and soon perhaps on the 680x0.
GCC 2 can also open-code most arithmetic on 64-bit values (type
long int). It can generate code for most of the same machines as
Version 1, plus the IBM PC/RT, the IBM RS/6000, the Motorola 88000, the
Acorn RISC machine, the AMD 29000 and the HP-PA (700 or 800). Ports for
the IBM 370, the Intel 960, and the NCUBE are on their way. Version 2
a.out, COFF, Elf, and OSF/Rose files when used with a
suitable assembler. GCC 2 can produce debugging information in several
formats: BSD stabs, COFF, ECOFF, ECOFF with stabs symbols, and Dwarf.
Not all of the Version 1 machine descriptions have been updated yet;
some do not work, and others need work to take full advantage of
instruction scheduling and delay slots. The old machine descriptions
for the Pyramid, Alliant, Tahoe, and Spur (as well as a new port for the
Tron) do not work, but are still included in the distribution in case
you want to work on them.
In GCC 2, using the new configuration scheme, building a
cross-compiler is as easy as building a compiler for the same target
machine. GCC 2 also supports more general calling conventions; it can
pass arguments "by reference" and can preallocate stack space
arguments. On the SPARC it uses the standard conventions for structure
arguments, but structure return values are still a problem. With
luck, this too will be fixed soon.
Version 2 of the compiler supports three languages: Objective-C,
C++, and C; the source file name selects the language. (The front
end support for Objective-C was donated by NeXT.) The runtime support
needed to run Objective-C programs is mostly working, but not available
C has been extended to support nested functions, nonlocal gotos, and
taking the address of a label.
GDB 4 contains many new features since 3.5 (the version currently on the
release tapes). They include remote debugging over serial lines or
TCP/IP; watchpoints; more readable output and a simplified command
interface; support of more binary formats (using BFD); limited debugging
of C++ (when using GCC 2); preliminary support for Modula-2
debugging (for the compiler being developed at the State University of
New York at Buffalo, others will not work); and the ability to debug
programs and core files that use SunOS shared libraries.
GDB 4 can perform cross-debugging. To say that GDB 4 targets a
platform means that it can perform native or cross-debugging for it. To
say that GDB 4 can host a given platform means that it can be
built on it, but cannot necessarily debug native programs. GDB 4
In addition, GDB 4 can understand the symbol tables emitted by the
compilers supplied by most vendors of MIPS-based machines, including
DEC. (These symbol tables are in a format which essentially nobody else
uses.) Debugging of G++ remains a problem, and GDB 4 won't work for
any version of G++ 1 at all.
- target and host: Amiga 3000 (Amix), DECstation 3100
& 5000, HP 9000/370 (BSD), IBM RS/6000 (AIX), Motorola Delta 88000
(System V), NCR 3000 (SVR4), SGI Iris (MIPS running Irix V3 or V4), SONY
News (NEWSOS 3.x), Sun-3, Sun-4, & Ultracomputer (29K running Sym1).
- target, but not host: i960 Nindy & AMD
29000 (COFF or
- host, but not target: Intel 386 (Mach) & IBM
The BFD (Binary File Descriptor) Library from Cygnus Support is a set of
routines to make handling different object file formats more transparent
to programs using them. Some GNU software is in the process of being
converted to use it. BFD comes with documentation.
GNU C Library 1.03
The library is ANSI C and POSIX.1 compliant and has most of the functions
specified in POSIX.2 draft 11.2. It is upward compatible with the 4.4 BSD
C library and includes many System V functions, plus GNU extensions.
The C library works on HP 9000 series 300s running 4.3 BSD and Sun-3 or
Sun-4 systems running SunOS 4.1. Someone has built it successfully for
an i860 cross-development environment. Porting is not hard.
This is the GNU C++ library for GCC Version 2 (see "Contents of
Languages Tape" for more info regarding libg++). The latest
version tries to automatically configure itself, thus working out of the
box on many hosts. The iostream facility has been improved.
GNU Graphics 0.17
See "Project GNU Status Report" for details.
Contents of the X11 Tapes
The two X11 tapes contain Version 11, Release 5 of the MIT X Window
System. The first FSF tape contains all the core software,
documentation, and some contributed clients. FSF refers to its first
tape as the `required' X tape since it is necessary for running X or
running GNU Emacs under X. The second, `optional,' FSF tape contains
contributed libraries and other toolkits, the Andrew software, games,
and other programs.
Berkeley Networking 2 Tape
The Berkeley "Net2" release contains the second 4.3 BSD distribution
and is newer than both 4.3BSD-Tahoe and 4.3BSD-Reno. It includes nearly
the entire BSD software system except for a few utilities, some parts of
the kernel, and some library routines which your own C library is likely
to provide. This release contains much more software than the older
releases, including third party software like Kerberos and some GNU
software (for example, GCC, now the standard BSD compiler). Except for
kernel sources, the GNU Project has replacements on other tapes for many
of the missing programs.
VMS Emacs and Compiler Tapes
We offer two VMS tapes. One has just the GNU Emacs editor. The second
contains the GNU C compiler, Bison (needed to compile GCC),
(needed to assemble GCC's output), and some library and include files.
We are not aware of a GDB port for VMS. Both VMS tapes have executables
from which you can bootstrap, since the DEC VMS C compiler has bugs
and cannot compile GCC.
Please do not ask us to devote effort to VMS support, because it is
peripheral to the GNU Project.
Free Software for Microcomputers
We do not provide support for GNU software on microcomputers because it
is peripheral to the GNU Project. However, we are willing to publish
information about groups who do so. If you are aware of any such
efforts, please send the details, including postal addresses, archive
sites, and mailing lists, to
email@example.com or to the
postal address on the front cover.
Please do not ask the Free Software Foundation about this
microcomputer software. FSF does not maintain it, and has no more
information about it.
GNU Software not on Apple computers
In lawsuits, Apple claims the power to stop people from writing any
program that has a user interface that works even vaguely like the
Macintosh's. If Apple triumphs in the courts, it will create for itself
a new power over the public that will enable it to put an end to free
software. So long as Apple continues to try to establish this kind of
monopoly, we will not provide any support or software for Apple machines.
Boston Computer Society
The BCS has thousands of shareware and free programs for microcomputers,
including some GNU programs. Contact them to see what is available for
Boston Computer Society
1 Kendall Square, Bldg 1400,
Cambridge, MA 02139
Phone: (617) 252-0600
GNU Software on the Amiga
Get Amiga ports of many GNU programs via anonymous FTP from:
/pub/amiga (USA), and
For info on (or offers to help with) the GCC port and related projects,
ask Leonard Norrgard,
firstname.lastname@example.org. For info on the
GNU Emacs port, ask Mark D. Henning,
Get more info via anonymous FTP in
GNU Software for Atari TOS and Atari Minix
You can obtain Atari ports from
anonymous FTP. Howard Chu,
maintains the archive. Ports are discussed on USENET in
order to get this group via e-mail, please ask
GNU C/C++ 2.1 for OS/2 2.0
Michael Johnson has completed a new, completely stand-alone port of the
GNU C/C++ Version 2.1 compiler for OS/2 2.0. The distribution
contains C/C++ compilers, the GNU assembler, the BSD C library and
an OS/2-specific library, and documentation. It is available via
anonymous FTP from
hobbes.nmsu.edu in the directory
Send a message to
email@example.com to be placed on
a mailing list for discussion about this system.
Linux: a free Unix system for 386 machines
Linux (named after its author, Linus Torvalds) is a free Unix clone
which implements a subset of System V and POSIX functionality. Linux
has been written from scratch and does not contain any proprietary code
in the kernel. A large number of the utilities and libraries are GNU
software. Linux runs only on 386/486 AT-bus machines, and porting to
non-Intel architectures is likely to be difficult as the kernel makes
extensive use of 386 memory management and task primitives. Linux is
freely distributable and available via anonymous FTP:
tsx-11.mit.edu:/pub/linux (USA), and
There is a newsgroup,
comp.os.linux, for discussions about Linux.
firstname.lastname@example.org regarding the
Free 386 BSD
Experienced hackers may be interested in the alpha test version of a 386
port of BSD Unix by William F. Jolitz et al. This kernel is free of
AT&T code and is freely redistributable. You can obtain more
email@example.com. Note that this
early version is not reliable, and has trouble booting on some systems.
DJGPP, the GNU C/C++ compiler for MS-DOS
D. J. Delorie has ported GCC/G++ to the 386 MS-DOS platform. The
compiler and programs it generates run in 32-bit mode with full virtual
memory support. DJGPP is available via FTP from
barnacle.erc.clarkson.edu in `/pub/msdos/djgpp'.
You can subscribe to a mailing list on DJGPP by sending your e-mail
Demacs, GNU Emacs for MS-DOS
Manabu Higashida and Hirano Satoshi have released Demacs, a GNU Emacs
port for 386/486 MS-DOS. Version 1.2.0 is the first post-beta release.
Demacs provides several DOS-specific features: support for binary or
text file translation, "8bit clean" display mode, 80x86 software
interrupt calls via a
int86 Lisp function, machine-specific
features such as function key support, file name completion with drive
name, child processes (
Dired mode works without `ls.exe'. Anonymous FTP it from:
Freemacs, an Extensible Editor for MS-DOS
firstname.lastname@example.org, has written a small
programmable editor that is somewhat compatible with GNU Emacs and will
run on most MS-DOS systems, including 8088 machines. It is so compatible
that Freemacs users can use the GNU Emacs Manual as a reference
Anonymous FTP it from `emacs16a.zip' (under
or send $15 (copying fee) to:
11 Grant St.
Potsdam, NY 13676
Phone: (315) 268-1925 (Fax: 9201)
Specify floppy format:
GNU Software on MS-DOS
Russ Nelson has ports for many GNU programs for MS-DOS available on
floppy disk. Contact him at the above address for more information.
In addition, contact
email@example.com for info on
ports of GNU programs to MS-DOS and related mailing lists. More
information is in `/pub/gnu/MicrosPorts/MSDOS' and
`MSDOS.gcc', obtainable via anonymous FTP on
Thanks to all those mentioned above in "GNUs Flashes", "Project GNU
Status Report", "GNU in Japan", and "GNU Software Available Now".
Thanks to the Artificial Intelligence Laboratory
and the Laboratory for Computer Science at
MIT for their invaluable assistance of many kinds.
Thanks to Village Center, Inc., ASCII
Corporation, and the Japan Unix Society,
all of Japan, for their continued donations and support, and thanks to
the anonymous GNU users in Japan for their gifts.
Thanks again to the Open Software Foundation for
their continued support.
Thanks to the Technical University of Eindhoven
in the Netherlands.
Thanks to the University of Massachusetts
at Boston (especially Rick Martin) for
allowing Karl Berry and Kathryn Hargreaves to use their computers.
Thanks to Chris Thyberg and Carnegie-Mellon University
for supporting Tom Lord.
Thanks to Jim Mochel for his help with MS-DOS.
Thanks to Chet Ramey for his continuing work on improving
Thanks to Lucid, Inc. for the loan of an X terminal and for
their support of Joe Arceneaux.
Thanks to Carol Botteron for proofreading and other
assistance, and to Mieko and Nobuyuki Hikichi
for their invaluable help raising both funds and consciousness in
Thanks to Cygnus Support for continuing to improve
various programs and assisting the GNU Project in other ways.
Thanks go out to all those who have either lent or donated machines,
including Hewlett-Packard for two 80486 computers, and six 68030
and four Spectrum workstations; Brewster Kahle of Thinking
Machines Corp. for the Sun-4/110; Doug Blewett of AT&T Bell Labs
for two Convergent Miniframes; CMU's Mach Project for
the Sun-3/60; Intel Corp. for their 386 machine; NeXT
for their workstation; the MIT Media Laboratory
for the Hewlett-Packard 68020; SONY Corp. and
Software Research Associates, Inc., both
of Tokyo, for three SONY News workstations; IBM Corp.
for an RS/6000 computer; the MIT Laboratory of
Computer Science for the DEC MicroVAX; the Open
Software Foundation for the Compaq 386; Delta
Microsystems for an Exabyte tape drive; an anonymous donor for 5 IBM
RT computers; Liant Software Corp. for five VT100s; Jerry
Peek for a 386 machine; NCD Corporation for an X terminal; and
Interleaf, Inc., Veronika Caslavsky, Paul
English, Cindy Woolworth, and Lisa Bergen for the loan
of a scanner.
Thanks to all those who have contributed ports and extensions, as well
as those who have contributed other source code, documentation, and good
bug reports. Thanks to those who sent money and offered help. Thanks
also to those who support us by ordering manuals and distribution
The creation of this bulletin is our way of thanking all who have
expressed interest in what we are doing.
Free Software Foundation, Inc. | stamp |
675 Massachusetts Avenue | |
Cambridge, MA 02139 | here |
USA | |