GNU's Bulletin, vol. 1 no. 12, January, 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: email@example.com
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 release of GNU Emacs. Roland
McGrath is polishing the C library and maintains GNU
Tom Lord is writing a graphics library and taking over
development of Oleo, the GNU spreadsheet. Brian Fox is
maintaining various programs that he has written including
info, BASH, GNU
finger, and the
readline library. Jan Brittenson is working on the C
interpreter. David J. MacKenzie maintains most of GNU's small
utilities--more individual programs than nearly everyone else
Melissa Weisshaus is editing documentation and will work on the
GNU Utilities Manual. Kathy Hargreaves and Karl
Berry are making fonts, developing utilities for dealing with
them, and working on Ghostscript.
Noah S. 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 Treasurer, 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,
including refining the C compiler, Emacs, etc., and their
Volunteer Len Tower remains our on-line JOAT
(jack-of-all-trades), handling mailing lists and gnUSENET,
information requests, etc.
Written and Edited by: Noah S. Friedman, Tom Lord,
Robert J. Chassell, Lisa Goldstein, 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 Stallman, President; Robert J.
Chassell, 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 will
put 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 accompany it.
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.
Distribution Tapes Reorganized
The FSF software distribution has added a third tape. 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 (see
"GNU Software Available Now").
GCC 2, GDB 4, and the C Library Nears Beta
For a limited time, a tape with GCC 2, GDB 4, and the GNU C Library
(libc) will also be distributed (see "Contents of the Experimental
Tape"). It will be available in March of 1992.
Motorola Signals Another Advance for Free Software
Motorola recently announced the availability of a C language tool kit
for its DSP56000/1 digital signal processor. The tool kit contains a
cross compiler adapted from GCC and a port of GDB. Source code for the
system is available from Motorola under the terms of the GNU copyleft.
TUGboat Turns to Port
The TeX Users Group board recently voted to copyleft future editions
of TUGboat, the group's newsletter.
We are using the Mach message-passing kernel being developed at CMU.
Earlier, nonfree versions of Mach were covered by export restrictions,
but there are no restrictions now. The latest version of the Mach
microkernel contains no AT&T code. (The microkernel provides no
high-level functionality, such as file systems and signals.)
Mike Bushnell is writing a set of servers, called the GNU Hurd, to run
on top of Mach to provide a full GNU OS. Although it is far from
finished, exciting progress is being made (see "Project GNU Status
GNU Fortran Mailing List
A moderated mailing list is available for people interested in the
Fortran front end for GCC. Requests to be put on the list can be sent
firstname.lastname@example.org. 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" was formed there a short while ago, and they will be
translating GNU documentation into Russian as well as performing other
tasks which are still in the planning stage. Recently they finished the
first version of a Modula-2-to-C translator. They are also working
on an SQL database management system.
GDB, GAWK, and Make Manuals Updated
Recently, volunteers revised the GAWK and GDB Manuals;
both are longer and better written than they were. We have also revised
the Make Manual. We will print and distribute all these manuals
in a six by nine inch format similar to the GNU Emacs Manual.
A Small Way to Help Free Software
If you find that GNU software has been helpful to you, and in particular
if you have benefited 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.
AT&T Threatens Users of X Windows
by Richard Stallman
Last spring, AT&T sent threatening letters to every member of the X
Consortium, including MIT, saying they need to pay royalties for the X
Window server. This is because AT&T has patented the use of "backing
store" in a multiprocessing window system (U.S. patent number
4,555,775). The X Consortium calls these developments "threatening to
University research". MIT is looking into how to fight AT&T in court
if necessary, but we don't know whether this can succeed.
Meanwhile, Cadtrak continues to demand royalties from the users of X
Windows for using exclusive-or to write on the screen, which is covered by
U.S. patent number 4,197,590.
The GNU system won't be terribly useful if it can't have X Windows. But
that isn't the only essential system feature which is in danger. Emacs
is threatened by IBM U.S. patent number 4,674,040 which covers "cut
and paste between files" in a text editor. Some Emacs extensions are
threatened by U.S. patent 4,458,311, which covers "text and numeric
processing on same screen." U.S. patent 4,398,249, covering the
general spreadsheet technique known as "natural order recalc",
threatens its use in GNU software.
In September, just as the FSF was about to release a data compression
program using an algorithm developed last spring by Ross Williams, a new
patent was issued covering his algorithm. As a result, we had to drop
the program--and we still don't know what to use instead.
There is little the FSF itself can do about these threats. Fighting
just one patent in court would use up all our funds. So, we have added a
provision to Version 2 of the GPL so that we can prohibit distribution
of one of our programs in certain countries if it is covered by patents
there. Most likely, one of those countries will be the United
If you develop software for wide use, chances are you, too, will find
you can't do your work without infringing thousands of patents that
apply to software. If you fight them one-by-one, it could cost you
millions of dollars per lawsuit. Doesn't it make sense for you to join
the League for Programming Freedom?
Copyrighted Programming Languages
by Richard Stallman
The GNU project has produced one of the best C compilers now in
existence. I decided to write a C compiler rather than designing a new,
completely clean language because C is the language in which users'
programs are written. For a Unix-like system, a C compiler is
If a new language becomes equally essential for a useful computer
system, will we be allowed to write a compiler for it? Not if we want
people in Europe to use the compiler. On May 15, 1991, the European
Community adopted a new directive for software copyright. It
establishes not only copyrighted user interfaces, but also
copyrighted protocols, copyrighted data formats, and copyrighted
Here is what the European Community law says about interfaces:
Whereas for avoidance of doubt it has to be made clear that only the
expression of a computer program is protected and that ideas and principles
which underlie any elements of a program, including those which underlie
its interfaces, are not protected by copyright under this directive;
Nothing prevents the details of an interface--as opposed to the
underlying ideas--from being copyrighted.
The Legal Affairs Committee of the European Parliament recommended
adding these words to solve this problem for certain kinds of
Whereas, these unprotectable items include, for example, protocols
for communication, rules for exchanging or mutually using
information that has been exchanged, formats for data, and the
syntax and semantics of a programming language;
This amendment was rejected after serious debate in which the
conservative party particularly opposed it. The importance given to the
question shows that it was regarded as a substantive
change--suggesting that Parliament believes the law as written
permits copyright on protocols, formats, and languages.
The principal supporters of these broad and dangerous monopolies were a few
large computer companies: IBM, Digital, Apple, and Siemens. (Only one of
them is a European company.) Many smaller companies formed the European
Committee for Interoperable Systems to lobby against interface monopolies,
but had little success.
What about the United States?
The latest version of the System V Interface Definition claims that the
interface is copyrighted. Adobe says the Postscript language is
copyrighted. You can bet that IBM, Digital, and Apple are telling Congress
loud and clear that programming languages should be copyrighted. And they
will point to the European law as proof this is sound policy.
So, the next time you adopt a new language, will we be able to support
it in the GNU compiler? Not in Europe, and probably not in the US
either. And next time you write a program, do you want to be forced
to make it incompatible with everything else that exists, just so you
don't get sued?
Since surveys show most programmers disapprove of these restrictions, most
likely you do too. The question is whether you want to do anything about
it. You can speak up and have an effect on the decision, or you can do
nothing and let IBM, Digital, and Apple do all the talking.
If you'd like to do something, the easiest thing to do is to join the
League for Programming Freedom--a grass-roots organization working
politically to bring back the freedom to write programs.
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 to:
League for Programming Freedom
1 Kendall Square - #143
P.O. Box 9171
Cambridge, MA 02139
Your name and phone numbers (home, work or both).
The address 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.
If you haven't made up your mind yet, phone (617) 243-4091, write to
the League for more information using the address above, 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.
John von Neumann Opposed Patents
--Included for the League for Programming Freedom
The biography, John von Neumann and the Origins of Modern
Computing (by William Asprey, MIT Press, 1990, pp. 41-45), describes a
patent dispute in 1946-47 that Von Neumann had with Eckert and Mauchly
over the EDVAC. Von Neumann had been a consultant to the EDVAC project
and had contributed to many of the fundamental inventions there. In
1946, Eckert and Mauchly attempted to patent much of the EDVAC
technology, including that which von Neumann claimed he had
The fight ended when a draft report on EDVAC that von Neumann had
written in 1945 was held to be a prior publication. Thus, all of the
inventions in question became part of the public domain.
One result of this dispute was that von Neumann changed the patent
policy for his computer project at the Institute for Advanced Studies.
The original plan was to have patents assigned to individual engineers.
Instead, all ideas were placed in the public domain.
Von Neumann said "This meant, of course, that the situation had taken a
turn which is very favorable for us, since we are hardly interested in
exclusive patents, but rather in seeing that anything that we
contributed to the subject ... remains as
accessible as possible to the general public."
GNU Aids Small Science in a Big Way
by Lester Ingber, Science Transfer Corporation,
Most people likely use such GNU products as Emacs, GCC, G++, GDB,
Groff, Gnuplot, etc., and other products based in part on these (e.g.,
taking advantage of the GCC compiler), such as BASH, Oleo, Perl, etc.,
because of their personal needs to (a) play with/explore new
software, (b) take advantage of the superior products offered
even as compared to "commercial" vendors, and (c) use inexpensive
software. Most likely, most beneficiaries of the GNU software
development project are computer scientists/hackers at
medium-to-large academic and commercial institutions. They usually are
concerned with advantages (a) and (b), and not so much with costs
The need to keep down costs (c), coupled with the requirement for
superior state-of-the-art software (b), are crucial for many small-scale
scientific projects. Many people, such as myself, who would rather
spend more time doing their "science" than playing/grappling with often
buggy software which comes along with item (a), still will prefer GNU
software because of items (b) and (c). There is a growing
awareness, especially in these times of budget deficits and the
political push for larger and more expensive projects, that for our
nation to survive the severe competition we now face, as well as to
simply promote good science--an essential goal of any civilized
people--we must find ways to secure "small" science. Many are making
the argument that such science is "small" only in monetary costs, that
the bulk of really important new developments come from such
Recently, to continue my projects, I had no choice but to dip again into
my own pocket to purchase my own computer. I have used many mainframes
and workstations, but always as an end-user in a computer system that
was managed by a specialist. I chose a Sun SparcStation because (1) it
was powerful enough to handle my codes and (2) there seemed to be plenty
of software available for their system. Little did I realize how
important (2) was to my projects! I thought my Sun would
immediately do everything, but I couldn't even laserprint out any of my
troff files, and the bundled C compiler was
Then, I discovered the GNU project, and after a few months of
grappling with being a computer systems' manager, I now have a
system of software that permits me to freely exercise my scientific
tools. For example, my paper, "Statistical mechanics of
neocortical interactions: A scaling paradigm applied to
electroencephalography," Phys. Rev. A, 44:4017-4060, 1991,
demonstrates how my theoretical model of the brain can be used to fit
EEG (electroencephalographic) data measured on the scalp. This is
another of several stringent tests I have applied to my theory; this
last test and its publication really required the GNU software, which I
definitely could not have afforded to buy even at reasonable commercial
So, my hat's off to Richard Stallman and the other dedicated people on the
GNU project. They not only are contributing state-of-the-art software
to the computer scientists of the world, but they are playing an
extremely important role in promoting small science.
GNU Helps Big Science, Too
It's not just small scientific projects that reap the benefits of free
software. Colin Manning of the JET project had this to say:
For your information, at JET, the world's foremost research project for
the development of nuclear fusion technologies for production of
electricity, where there are needless to say a large number of
computers, GNU software is well used and appreciated. GNU Emacs is
used almost universally. GCC/BASH/GAWK and many others likewise. We
are (currently) Sparc based.
"As we enjoy great advantages from the inventions of others, we
should be glad of an opportunity to serve others by any invention of
Project GNU Status Report
A New 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.
GNU OS Work: The Hurd
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
The Hurd consists of the filesystems, the terminal driver, the process
server, the network protocol servers, and a few minor servers. The
mounted filesystems each use a separate Mach task, and provide a
superset of Unix functionality. Unprivileged users will be able to
add filesystems of their own design to the directory tree in a secure
manner. Mike Bushnell has written an implementation of the BSD Fast
File System and is now debugging it. This implementation provides
access to files as shared memory (which permits faster access) and if
directly used by
stdio in the C library, eliminates a data
copy in a large number of I/O intensive programs. A future release of
the GNU C library will provide this support.
Eventually, we will implement other filesystems, including traditional
ones like NFS, as well as non-traditional ones such as transparent
access to FTP, and
The Hurd terminal driver looks like a file server to user programs, but
it supports a greater variety of
ioctl calls as well as providing
both BSD and POSIX terminal functionality. The terminal driver will
support terminals layered on serial lines, network ports, and other
The process server offers a process abstraction; it provides process and
host id's, sends signals to other processes, fetches information for
ps-like programs, and so on. The server's primary purpose is to
function as an information repository; the system call interpreter
handles complicated aspects of signal delivery.
When Hurd alpha testing begins, we will start in earnest to implement
the network. 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.
Source compatibility with BSD 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.
The system is intended to be source compatible with 4.4 BSD, and POSIX.1
compliant when used with the GNU C Library. Binary compatibility
will be provided on some systems. 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.
Emacs 18 maintenance continues for simple bug fixes. Version 19 will
enter beta test late this year. Among its new features are: before and
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.
The GNU C compiler (GCC) Version 1.40 was released last year. It
supports ANSI standard 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
and COFF format object files when used with a suitable
Version 2 of GCC is starting beta test (see "Contents of the
Experimental Tape"). 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 not be available soon either. Volunteers are
developing front ends for Modula 3 and Pascal. There are mumblings
about other languages, but no one has volunteered to do Cobol
Steve Chamberlain and others at Cygnus Support have re-written 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 what is placed where in memory.
Version 1.94 is currently in beta test. Major changes are not expected.
Per Bothner (
email@example.com) coordinates the
Roland McGrath and others continue to work on the C Library. It now
contains all of the ANSI C-1989 and POSIX.1-1990 functions, and work is
in progress on POSIX.2 and Unix functions (BSD and System V). Mike
Haertel has written a fast
malloc which wastes less memory than
the old GNU
malloc. 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.
The C Library will do much of the work of the Unix system calls for the
Hurd. Roland is working on adding support for them.
The GNU source-level C and C++ debugger, GDB, is now being
distributed along with the GNU C Compiler.
GDB Version 4.3 is in beta test. New machine ports include the 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
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 inheritance.
The current version of Ghostscript is 2.3. Features include: support
for all the PostScript extended color operators, including colorimage;
"band list" technology that allows Ghostscript to drive high
resolution printers with limited memory; and "save" and "restore",
which were the major elements of the PostScript language not implemented
Currently, Ghostscript accepts commands in PostScript and executes them
by drawing on an X window or by writing a file that you can print
directly. GNU volunteers are working on previewers for multi-page
files; we hope one will be available soon.
Ghostscript also includes a C-callable graphics library (for client
programs that do not want to deal with the PostScript language), and
also supports IBM PCs and compatibles with EGA or VGA graphics (but do
not ask the FSF staff any questions about this; we do not use PCs and do
not have time to learn anything about them).
GNU Graphics is a set of programs which produce plots from ASCII or
binary data. It supports output to Tektronix 4010, PostScript, and X
window system or compatible devices.
A new version of GNU Graphics will begin alpha testing early this year.
Improvements in the next release include: a revised manual; new
for output in ln03 and TekniCAD TDA file formats; a replacement for the
spline program; examples of shell scripts using
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.
James Clark has completed
troff and related
programs). Version 1.04 is now available. (see "Contents of Utilities
Tape.") New in this release is an implementation of the
macros contributed by Joergen Haegg (
groff is written in C++. It can be compiled with GNU
C++ (Version 1.40.3 or later recommended).
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 documentation, a
grap emulation (a
preprocessor for typesetting graphs), a page-makeup postprocessor
pm (see Computing Systems, 2:2), and an ASCII
output class for
pic so that
pic can be integrated with
James would like to take this opportunity to thank everybody who has
contributed bug reports. Please continue to submit them to
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, radical and algebraic functions,
differential and finite differential operators and holonomic functions.
In addition, vectors and matrices of the above objects are
JACAL runs under either Common Lisp or Scheme. A version of Scheme
(IEEE P1178 and Rev^4 compliant) written in C comes with JACAL. It runs
under VMS, MS-DOS, Unix, and similar systems. Pre-release source is
available for anonymous
`archive/scm' in `jacal0-4.tar.Z' and
The FSF is not distributing this on tape yet. To receive an IBM PC
floppy disk with the source and executable files send $70.00 to: Aubrey
Jaffer, 84 Pleasant St., Wakefield MA 01880, USA.
The Texinfo 2 package includes an enhanced Texinfo mode for GNU Emacs,
new versions of the formatting commands, and the second edition of
the Texinfo Manual. The new manual is more complete than the
first edition and describes more than 50 new commands. Texinfo mode now
includes commands for automatically creating and updating nodes and
menus, a tedious task when done by hand. The new formatting
makeinfo, a standalone C program that is
independent of GNU Emacs. The Texinfo package is in beta
GNU in Japan
firstname.lastname@example.org, & Nobuyuki Hikichi,
email@example.com, continue to work on the GNU Project in
Japan. They translate GNU information, write columns, request
donations, and consult with people about GNU. They have translated
Version 1 of the GNU General Public License into Japanese and are
now seeking a lawyer to review their translation of the new GNU Library
General Public License.
Japanese versions of Emacs are available. One is
Emacs), widely used in Japan, which works on many systems including i386
MS-DOS machines. A Japanese version of Epoch,
If you can, please order GNU software directly from the FSF--every 150
tape orders allows us 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
firstname.lastname@example.org. The FSF does not
A group connected with the commercial personal computer network in Japan
is writing and distributing a hardware design and associated software
that uses a MIPS-architecture CPU. The OS, called
t2, is a
subset of Unix.
GNU Software Support Company in Japan
For the first time, people in Japan will be able to contact a company
for GNU software support; the company is named Wingnut. 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).
A lot of people in Japan wanted to use GNU software, but no
organization offered software support. Wingnut plans to provide
support services at a reasonable charge, part of which will be donated
to the FSF.
We expect that a software support company of this sort will help
the GNU project in Japan.
Project GNU Wish List
Wishes for this issue are for:
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.
Someone to finish the
smail mail delivery system.
One 386 or 486 PC-AT compatible with at least 200 meg of hard disk and
an Ethernet card.
A 300 meg SCSI disk that can attach to a Sun-3; a Sun QIC-150 cartridge
tape drive; hard disks for IBM RTs; Sun-3 workstations; and a floppy
disk copying and verification machine.
A volunteer to update and maintain an on-line edition of Roget's
Thesaurus (starting with an old edition now in the public
Volunteers to help write programs and documentation. Send mail to
email@example.com for the task list and coding
Speech and character recognition software (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.
Ideas for good articles in future GNU's Bulletins. We particularly like
to highlight organizations involved with free information
New quotes for future GNU's Bulletins.
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.
GNU Software Available Now
We offer Unix software source distribution tapes in
tar format on
the following media types: 1600 bpi 9-track reel tape, 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 GNU C that include sources and VMS
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 are 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 new Languages and Utilities
GNU Emacs 18.57
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 have been
written which emulate three other popular editors: vi, EDT (the DEC
VMS editor), and Gosling (aka Unipress) Emacs. GNU Emacs is described
by the GNU Emacs Manual and the GNU Emacs Lisp Reference
Manual, which come with the software. A reference card is also
GNU Emacs 18.57 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, 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, Pmax, 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.01
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 is accompanied by the Calc Manual, which serves as
both a tutorial and a reference. If you wish, you can use Calc as
only a simple four-function calculator, but it also 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 programming and
to research new parallel programming constructs and compilation
techniques. MIT Scheme is written in C and runs on many Unix systems.
It now conforms to the "Revised^3 Report On The Algorithmic Language
Scheme" (MIT AI Lab Memo 848a), for which TeX source is
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, Sparc workstations,
MIPS R2000 workstations (including the Decstation 3100), and 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 beta-test Texinfo
package contains enhancements to the current suite and an
expanded manual (see "Project GNU Status Report").
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
compress, we will be switching to another
compression algorithm. 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 description.
GCC supports full ANSI C. 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. Machines using these CPUs 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, & Sun386i). 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
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 the latter has been diverging from
ANSI. G++ comes with the GNU G++ Users Guide (not
yet published on paper).
G++ compiles source quickly, provides good error messages, and
works well with GDB. Since G++ depends on GCC, it must be used
with the correspondingly numbered version of GCC.
The GNU C++ library,
libg++, is an extensive, documented
collection of C++ classes and support tools for use with
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 Vax.
We have free versions of
strip. The GNU linker
is fast and 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. You link
your program with the
dld library, and this enables your program
to load object files dynamically 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.
robotussin is supplied for converting standard libraries to this
flex 2.3.7 and Bison 1.16
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
lex does. 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
make is fairly stable.
make is also included on the
Utilities tape. 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
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
indent is the GNU modified version of the freely-distributable
program from UCB. It contains a `
-gnu' option which formats
C source according to GNU coding standards.
GAWK 2.13, 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 program called
perl, which combines
the features of
sh, and C. It has all of
the capabilities of the aforementioned programs as well as TCP/IP
socket-manipulation facilities, interfaces to various other system
calls, and C library routines.
f2c 3.2.90, and
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 information.
f2c converts Fortran--77 source files into C or C++.
gdbm library is the GNU replacement for the standard
gdbm supports both
gdbm does not need sparse database formats (unlike its
Contents of the Utilities Tape
This tape includes all 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.
make 3.62, 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
-me macros and an enhanced version of the
make program on this tape is the same as the one on the
Languages tape. The
texi2roff here is the same as that on the
tar 1.10 and
tar includes multivolume support, the ability to archive
sparse files, automatic compression and decompression of archives,
remote archives, and special features to allow
tar to be used for
incremental and full backups.
cpio is an alternative archive
fgrep 1.1, and
[ef]grep programs are GNU's versions of the
Unix programs of the same name. They are much faster than their
traditional Unix versions.
patch is Larry Wall's program to
diff's output and apply those differences to an original
file to generate the patched version.
RCS 5.6 and CVS 1.2
The Revision Control System, RCS, is used for version control
and management of software projects. When used with GNU
diff, later versions of RCS handle binary files (executables,
object, 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
fileutils 3.1, shellutils 1.5, and textutils 1.1
The "fileutils" are file manipulation utilities:
The "shellutils" contain small commands frequently used on the command
line or in shell scripts:
The "textutils" are programs that manipulate textual data:
Ghostscript 2.3 and
Ghostscript is GNU's graphics language that is almost fully compatible
with Postscript (see "Project GNU Status Report").
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
macroprocessor 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, and is used
copiously in shell scripts to manipulate text.
find is used
frequently both interactively and in shell scripts to find files that
match certain criteria and perform operations on them.
elvis 1.4 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, Atari TOS, and should be easily ported to many other systems.
screen is a terminal multiplexor that allows you to handle
several independent "screens" (ttys) on a single physical terminal.
Each virtual terminal created emulates a DEC VT100 plus several ANSI
X3.64 and ISO 2022 functions.
time 1.2 and
time is used to time commands (usually from a shell) and report
statistics about the amount of user, system, and approximate real time
used by a process.
tput provides a portable way of allowing
shell scripts to use special terminal capabilities. GNU
termcap database, rather than the usual
MandelSpawn 0.06, GNU Chess 3.1, NetHack 3.0, and GnuGo 1.1
MandelSpawn is a parallel Mandelbrot program for the 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.
Freed Files from the U.C. Berkeley 4.3-tahoe Release
These files have been declared by Berkeley to be free of AT&T code and
may be freely redistributed. They include complete sources for some
programs and library routines, and partial sources for many
Contents of the Experimental Tape
This tape will not be available until March, 1992. This tape
includes software that is currently in beta test. Some of the software
already has released versions on the distribution tapes. It is
available for people who are feeling adventurous. Please do send bug
reports to the appropriate addresses (which are listed in the notes for
each program on the tape).
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
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
(debugging on the RS/6000 is not yet supported).
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 do not work, but are still
included in the distribution in case you would like to work on them.
There is also a new port for the Tron that also needs updating in order
In Version 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 the space
for stack arguments. On the Sparc it uses the standard conventions
for structure arguments, but structure return values still present 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), Decstations 3100
& 5000, HP 9000/370 (BSD), Motorola Delta 88000 (System V), NCR 3000
(SVR4), SGI Iris (MIPS running Irix V3), Sony NEWS (NEWSOS 3.x), Sun3,
Sun4, & 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 Software is a set
of routines to make handling of 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
The library is POSIX.1 compliant and has most of the functions
specified in POSIX.2 draft 11.2. It is upward compatible with the 4.3 BSD
C library and includes many System V functions, plus GNU extensions.
stdio allows you to define arbitrary streams and to do
printf and such on those streams. This makes the implementation of
sprintf particularly easy, as well as allowing more flexibility for
The C library is known to work on HP 9000 series 300s running 4.3 BSD and
Sun4 systems running SunOS 4.1. Someone has built it successfully for an
i860 cross-development environment. Porting is not hard.
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.
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),
to assemble GCC's output), and some library and include files. Both VMS
tapes include executables from which you can bootstrap, because 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.
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 presentation via the menu-driven Info
system. These manuals, provided with our software, are also available in
hardcopy; see the "FSF Order Form" inside the back cover.
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
ftp from the host
prep.ai.mit.edu (the IP
22.214.171.124). 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
your name, mode:
archive.eu.net, ftp.funet.fi, isy.liu.se, ftp.diku.dk,
ftp.cs.titech.ac.jp, labrea.stanford.edu, jaguar.utah.edu,
cc.utah.edu (VMS GNU Emacs), wuarchive.wustl.edu,
gatekeeper.dec.com, mango.rsmas.miami.edu (VMS G++),
uxc.cso.uiuc.edu, 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
acornrc!bob, hqda-ai!merlin, firstname.lastname@example.org,
For those without Internet access, see the section entitled "Free
Software Support" for information on receiving electronic mail via
"If I have seen farther, it is by standing on the shoulders of
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 for Apple machines.
Boston Computer Society
The BCS has thousands of shareware and free programs for microcomputers,
including some GNU programs. Please contact them to see what is
available for your machine.
Boston Computer Society
1 Kendall Square, Bldg 1400
Cambridge, MA 02139
Phone: (617) 252-0600
GNU Software on the Amiga
Ports of many GNU Programs to the Amiga are available via anonyomus
karazm.math.uh.edu:/pub/Amiga/Gnu (USA), titan.ksc.nasa.gov:/pub/amiga
(USA), ftp.funet.fi:/pub/amiga/gnu (Europe)
For info on (or offers to help with) the GCC port and related projects,
write to Leonard Norrgard,
firstname.lastname@example.org. For info on
the GNU Emacs port, write to Mark D. Henning,
email@example.com. More information is in
`/pub/gnu/MicrosPorts/Amiga', obtainable via anonymous
GNU Software on the Atari
You can obtain ports of many GNU programs to Atari TOS and Atari Minix
is maintained by Howard Chu,
These ports are discussed on two USENET newsgroups
get the former group via e-mail, you can ask
GNUish MS-DOS project
information on ports of GNU programs to MS-DOS and related mailing
lists. More information is in `/pub/gnu/MicrosPorts/MSDOS',
obtainable via anonymous
GNU Software on MS-DOS
Russ Nelson has ports for a lot of GNU software for MS-DOS available on
floppy disk. For more info, contact Crynwr Software, 11 Grant St.,
Potsdam, NY 13676, USA. The voice/FAX number is (315) 268-1925.
DJGPP, the GNU C/C++ compiler for MS-DOS
DJ Delorie has ported the GCC/G++ compiler to the 386 MS-DOS
platform. The compiler and programs it generates run in the 386's
32-bit mode with full virtual memory support.
DJGPP is available via
barnacle.erc.clarkson.edu in the directory
Demacs, GNU Emacs for MS-DOS
Manabu Higashida and Hirano Satoshi have released
a port of GNU Emacs for 386/486 MS-DOS machines. The new version
is 1.2.0 and 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 by an
int86 Lisp function, machine specific features such as
function key support, file name completion with drive name, child
call-process), and an enhanced
Dired mode which can work without `ls.exe'.
Demacs can be obtained via anonymous
utsun.s.u-tokyo.ac.jp:/GNU/demacs (for U.S. users)
Freemacs, an Extensible Editor for MS-DOS
by Russ Nelson,
I have written a small but programmable editor for MS-DOS that is
somewhat compatible with GNU Emacs. It is called Freemacs, and is
programmed in "MINT", a string processing language, but tries to
emulate GNU Emacs. It does a remarkably good job for a 21K
executable--good enough, in fact, that I recommend that Freemacs users
buy the GNU Emacs Manual. Of course, the bulk of the
emulation is done in the MINT code, totaling 150K.
You may freely copy this software. I ask only that you return
improvements to me for incorporation into the package for all of
The distribution is available from these sources:
ftp the file `/e/freemacs' from host
grape.ecs.clarkson.edu or from host
wsmr-simtel20.army.mil (under directory
CUHUG BBS: (315)268-6667 1200/2400 8N1, 24 hrs, file area 25, no
registration required to download Freemacs; or
send $15 (copying fee) to Russ Nelson, 11 Grant St., Potsdam, NY 13676, USA,
phone: (315) 268-6455, specify floppy format:
Thanks to all those mentioned above in "GNUs Flashes", the "Project
GNU Status Report", and "GNU Software Available Now".
Thanks to Walter Poxon for serving as coordinator of the GNU
Project's volunteer programmers.
Thanks to NCD Corporation for the gift of an X terminal. Thanks
to Lucid, Inc. for the loan of an X terminal and for their
support of Joe Arceneaux. Thanks to Interleaf, Inc. and
Veronika Caslavsky and special thanks to Paul English,
Cindy Woolworth, and Lisa Bergen for the loan of a
scanner. Thanks to Jerry Peek for the gift of a 386
Thanks to Chris Thyberg and Carnegie-Mellon University
for supporting Tom Lord.
Thanks to Jim Mochel for his help with MS-DOS.
Thanks to the Artificial Intelligence Laboratory
and the Laboratory for Computer Science at
MIT for their invaluable assistance of many kinds.
Thanks to Chet Ramey for his continuing work on improving
Thanks again to the Open Software Foundation for
their continued support.
Thanks to ASCII Corporation and Village Center, Inc.,
both of Japan for their donations.
Thanks to the anonymous GNU users in Japan for their gifts.
Thanks to Devon McCullough for technical assistance, to
Carol Botteron for proofreading and other assistance,
and to Mieko and Nobuyuki Hikichi for their
invaluable help raising both funds and consciousness in Japan.
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 six 68030 workstations, two
80486 computers, and four Spectrum workstations; Brewster
Kahle of Thinking Machines Corp. for the Sun 4/110; K. Richard
Pixley for the AT&T Unix PC; 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 machine; 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; Munin Technologies for their donation
of a VAX-11/750 and other DEC equipment; and Clement Moritz for
donating two reel-to-reel tape drives.
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 | |