PRINTER:

replace this page with the Table of Contents/Front Cover page at the end of the file.

{The front cover uses @contents so it is at the end}

THIS PAGE One EXISTS SO THE “g” COMMAND WORKS OK IN “xdvi”. -LEN-BULL17

TIMESTAMP

1 May 1998 22:33

Missing stuff

...

for the bull24 editor to deal with:

ask Brian <3diff> what dpi printer needs. Wilmington uses 1270dpi. Dan: review info-gnu archive on gnu-life for new software releases since May

95 entering proof from wall copy, and reviewers /gp/bu../ForNextBull (as time allows) diskette preparation for the printer

waiting for info from others before they can be done:

LPF article?

maybe for someone (len?) to deal with:

update texinfo.tex, maybe merge in changes from Texinfo distribution. fsf-order-form.tex Instructions for the printer in file ./Printer-Instructions.text Proof back from Karl Berry? Carol (via len)? Simsong? 3diff? Eric Ostrom?

Noah? hag?

Table of Contents

Other stuff:

GNU’s Who

New to GNU are Free Software Foundation officers Geoffrey Knauth, who serves as Treasurer, and Timothy Ney, who serves as Clerk and manages the FSF Distribution Office.

Our new technical writer, Michael Stutz, is about to begin writing A GNU/Linux Cookbook, which will explain to non-programmers how to use a GNU/Linux System for non-programming activities.

Those who have moved on are Jim Blandy (who still maintains GUILE), Miles Bader, Thomas Bushnell n/BSG (still working on the GNU HURD), and Melissa Weisshaus. We wish them the best of luck in their new endeavors.

Karl Heuer enhances Emacs and works on an accounting package. He also produces Deluxe Distributions with Ian Murdock, Noel Cragg, Alia Atlas, and others. Brian Youmans is our Distribution Manager and handles online inquiries. Paul Wendt handles the phones and much of the administrative work in the office. We thank them for their hard work.

Prof. Masayuki Ida is our Vice President for Japan. He organizes Japanese events and works with GNU’s friends in Japan.

Volunteer Joel N. Weber II is system administrator for the GNU machines; Martin Hamilton handles the GNU mailing lists; Franklin R. Jones takes care of the GNU web site; Steve Morningthunder and Alex Bernadin help coordinate all of the many other volunteers in the GNU Project. Richard Stallman continues as a volunteer who does countless tasks including Emacs development.

Administrivia and Copyright

Written & Edited by Thomas Bushnell, n/BSG, Tim Ney, and Paul Wendt.

Illustrations by Etienne Suvasa and Jamal Hannah.

Japanese Edition by Mieko Hikichi and Nobuyuki Hikichi

ISSN (International Standard Serial Number): 1075-7813

The GNU’s Bulletin is published at least twice a year. Please note, there is no postal mailing list. To get a copy, send your name and address with your request to gnu@gnu.org. Enclosing $0.55 in U.S. postage or a donation of a few dollars is appreciated but not required. If you’re outside the USA, enclosing a mailing label and enough International Reply Coupons for a package of about 100 grams is appreciated but not required. (Including a few extra International Reply Coupons for copying costs is also appreciated.)

Copyright \begin{matrix}c \\ ◯ \end{matrix} 1998 Free Software Foundation, Inc. Permission is granted to anyone to make and distribute verbatim copies of this document, in any medium, provided that the copyright notice and permission notice are preserved, and that the distributor grants the recipient permission for further redistribution as permitted by this notice.

Other GPL’ed Software

We maintain a list of copylefted software that we do not presently distribute. FTP the file ‘/pub/gnu/GPLedSoftware’ from a GNU FTP host (see How to Get GNU Software, page 46).

Please let us know of additional programs we should mention. We don’t list Emacs Lisp Libraries; host archive.cis.ohio-state.edu has a list of those you can FTP in the

file ‘/pub/gnu/emacs/elisp-archive/LCD-datafile.Z’.

What Is the FSF?

The Free Software Foundation is dedicated to eliminating restrictions on people’s right to use, copy, modify, and redistribute computer programs. We do this by promoting the development and use of free software. Specifically, we are putting together a complete, integrated software system named “GNU” (“GNU’s Not Unix”, pronounced “guh-noo”) that will be upwardly compatible with Unix. Most parts of this system are already being used and distributed.

The word “free” in our name refers to freedom, not price. You may or may not pay money to get GNU software, but either way you have three specific freedoms once you get it: first, the freedom to copy a program, and distribute it to your friends and co-workers; second, the freedom to change a program as you wish, by having full access to source code; third, the freedom to distribute a modified version and thus help build the community. Free software means you can study the source and learn how such programs are written; it means you can port it or improve it, and then share your work with others.

If you redistribute GNU software, you may charge a distribution fee or you may give it away, so long as you include the source code and the GNU General Public License; see What Is Copyleft, page 4, for details.

Other organizations distribute whatever free software happens to be available. By contrast, the Free Software Foundation concentrates on the development of new free software, working towards a GNU system complete enough to eliminate the need to use a proprietary system.

Besides developing GNU, the FSF distributes GNU software and manuals for a distribution fee, and accepts gifts (tax-deductible in the U.S.) to support GNU development. Most of the FSF’s funds come from its distribution service.

The Board of the Foundation is: Richard M. Stallman, President; Gerald J. Sussman and Geoffrey Knauth, Directors.

What Is Copyleft?

The simplest way to make a program free is to put it in the public domain, uncopyrighted.

But this permits proprietary modified versions, which deny others the freedom to redistribute and modify; such versions undermine the goal of giving freedom to all users. To prevent this, copyleft uses copyrights in a novel manner. Typically, copyrights take away freedoms; copyleft preserves them. It is a legal instrument that requires those who pass on a program to include the rights to use, modify, and redistribute the code; the code and the freedoms become legally inseparable.

The copyleft used by the GNU Project is made from the 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 aforementioned freedoms. An alternate form, the GNU Library General Public License (LGPL), applies to a few (but not most) GNU libraries. This license permits linking the libraries into proprietary executables under certain conditions. The appropriate license is included in each GNU source code distribution and in many manuals. Printed copies are available upon request.

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 either form of GNU Public License appear at the end of each license.

What Is Linux?

Linux (named after its main author, Linus Torvalds) is a GPL’ed kernel that implements POSIX.1 functionality with SysV & BSD extensions. GNU/Linux systems are now available for Alpha & 386/486/Pentium/Pentium Pro

machines. An m68k port is in testing (it runs on high end Amiga & Atari computers). MIPS, PowerPC & Sparc ports are being worked on.

  FTP it from ftp.kernel.org in ‘/pub/linux’ (USA) &
  from ftp.funet.fi in ‘/pub/Linux’ (Europe).

Ask majordomo@vger.rutgers.edu about mailing lists. See USENET newsgroups such as comp.os.linux.misc for news.

What Is a GNU/Linux System?

by Richard M. Stallman

Many computer users run a modified version of the GNU system every day, without realizing it. Through a peculiar turn of events, the version of GNU which is widely used today is more often known as “Linux”, and many users are not aware of the extent of its connection with the GNU Project.

There really is a Linux; it is a kernel, and these people are using it. But you can’t use a kernel by itself; a kernel is useful only as part of a whole system. The system in which Linux is typically used is a modified variant of the GNU system—in other words, a Linux-based GNU system.

Many users are not fully aware of the distinction between the kernel, which is Linux, and the whole system, which they also call “Linux”. The ambiguous use of the name doesn’t promote understanding.

Programmers generally know that Linux is a kernel. But since they have generally heard the whole system called “Linux” as well, they often envisage a history which fits that name. For example, many believe that once Linus Torvalds finished writing the kernel, his friends looked around for other free software, and for no particular reason most everything necessary to make a Unix-like system was already available.

What they found was no accident—it was the GNU system. The available free software added up to a complete system because the GNU Project had been working since 1984 to make one. The GNU Project set forth the goal of developing a free Unix-like system, called GNU. By the time Linux was written, the system was almost finished.

Most free software projects have the goal of developing a particular program for a particular job. For example, Linus Torvalds set out to write a Unix-like kernel (Linux); Donald Knuth set out to write a text formatter (TeX); Bob Scheifler set out to develop a window system (X Windows). It’s natural to measure the contribution of this kind of project by specific programs that came from the project.

If we tried to measure the GNU Project’s contribution in this way, what would we conclude? One CD-ROM vendor found that in their “Linux distribution”, GNU software was the largest single contingent, around 28% of the total source code, and this included some of the essential major components without which there could be no system. Linux itself was about 3%. So if you were going to pick a name for the system based on who wrote the programs in the system, the most appropriate single choice would be “GNU”.

But we don’t think that is the right way to consider the question. The GNU Project was not, is not, a project to develop specific software packages. It was not a project to develop a C compiler, although we did. It was not a project to develop a text editor, although we developed one. The GNU Project’s aim was to develop a complete free Unix-like system.

Many people have made major contributions to the free software in the system, and they all deserve credit. But the reason it is a system—and not just a collection of useful programs—is because the GNU Project set out to make it one. We wrote the programs that were needed to make a complete free system. We wrote essential but unexciting major components, such as the assembler and linker, because you can’t have a system without them. A complete system needs more than just programming tools, so we wrote other components as well, such as the Bourne Again SHell, the PostScript interpreter Ghostscript, and the GNU C library,

By the early 90s we had put together the whole system aside from the kernel (and we were also working on a kernel, the GNU Hurd, which runs on top of Mach). Developing this kernel has been a lot harder than we expected, and we are still working on finishing it.

Fortunately, you don’t have to wait for it, because Linux is working now. When Linus Torvalds wrote Linux, he filled the last major gap. People could then put Linux together with the GNU system to make a complete free system: a Linux-based GNU system (or GNU/Linux system, for short).

Putting them together sounds simple, but it was not a trivial job. The GNU C library (called glibc for short) needed substantial changes. Integrating a complete system as a distribution that would work “out of the box” was a big job, too. It required addressing the issue of how to install and boot the system—a problem we had not tackled, because we hadn’t yet reached that point. The people who developed the various system distributions made a substantial contribution.

Aside from GNU, one other project has independently produced a free Unix-like operating system. This system is known as BSD, and it was developed at UC Berkeley. The BSD developers were inspired by the example of the GNU Project, and occasionally encouraged by GNU activists, but their actual work had little overlap with GNU. BSD systems today use some GNU software, just as the GNU system and its variants use some BSD software; but taken as wholes, they are two different systems which evolved separately. A free operating system that exists today is almost certainly either a variant of the GNU system, or a kind of BSD system.

The GNU Project supports GNU/Linux systems as well as the GNU system— even with funds. We funded the rewriting of the Linux-related extensions to the GNU C library, so that now they are well integrated, and the newest GNU/Linux systems use the current library release with no changes. We also funded an early stage of the development of Debian GNU/Linux.

We use Linux-based GNU systems today for most of our work, and we hope you use them too. But please don’t confuse the public by using the name “Linux” ambiguously. Linux is the kernel, one of the essential major components of the system. The system as a whole is more or less the GNU system. Please use the term “Linux-based GNU system” or “GNU/Linux” when you talk about the system which is a combination of Linux and GNU.

What Is the Hurd?

The Hurd is a collection of server processes that run on top of Mach, a free message-passing microkernel developed at CMU. The Hurd and Mach together form the kernel of the GNU/Hurd operating system. The GNU C Library implements the Unix “system call” interface by sending messages to Hurd servers as appropriate.

The Hurd allows users to create and share useful projects without knowing much about the internal workings of the system—projects that might never have been attempted without freely available source, a well-designed interface, and a multiple server design. The Hurd is thus like other expandable GNU software, e.g. Emacs and GUILE.

Currently, there are free ports of the Mach kernel to the 386 PC, the DEC PMAX workstation, and several other machines, with more in progress, including the Amiga, PA-RISC HP 700, & DEC Alpha-3000. Contact us if you want to help with one of these or start your own. Porting the GNU Hurd & GNU C Library is easy (easier than porting GNU Emacs, certainly easier than porting the compiler) once a Mach port to a particular platform exists.

We have made several test releases of the Hurd.

We need help with significant Hurd-related projects. Experienced system programmers who are interested should send mail to gnu@gnu.org. Porting the Mach kernel or the GNU C Library to new systems is another way to help.

You can obtain test releases of the Hurd from a GNU FTP host (see How to Get GNU Software, page 46) along with complete binaries for an i386 GNU/Hurd system. We will not be distributing these on CD-ROM until they are more stable.

Become a Patron of the FSF

The Free Software Foundation wants to acknowledge its supporters and contributors in a more visible fashion. You can now become an “official” supporter of the FSF. See Thank GNUs, page 49, for the names of people and organizations who have done so.

• $100 makes you a Supporter of the FSF; you get a listing of your name in the GNU’s Bulletin for a year.

• $500 makes you a Contributor; you get a listing and a Certificate.

• $1000 makes you a Sustaining Contributor; you get a listing, a Certificate, and a gift.

• $5000 makes you a Patron; you get all the “benefits” of a Sustaining Contributor plus a special gift.

The Free Software Foundation is a 501(c)(3) organization; all contributions are tax deductible in the US.

Free Software Redistributors Donate

The FSF receives many donations generated by the redistribution of software or the sale of paper publications. For the users’ sake, it is best when redistributors and publishers who donate to the FSF make clear and precise statements of the amount of donation on their packaging and book covers.

For example, IKARIOS of France donates 5 FF from sale of each LINDIS, SuSE, or Red Hat CD set. Their packaging specifies “5 FF to the Free Software Foundation for the GNU Project”. And Kyoto Micro Computer of Japan regularly donates 10% of its GNU-related revenues.

Red Hat Software donates $1.00 for every copy of the Power Tools CD set.

The Sun Users’ Group – Deutschland is exceptionally clear: their CD says, “Price 90 DM, + 12 DM donation to the FSF.” We thank all of these free software redistributors for contributing to the GNU Project in a clear way.

By arrangement with author Arnold Robbins, Specialized Systems Consultants donates 3% of revenues from Effective AWK Programming and the associated AWK Reference Card. Many authors of articles in SSC’s Linux Journal designate us to receive their fees.

In the long run, the success of free software depends on how much new free software people develop. Distribution of free software or its documentation offers an opportunity to raise funds for such development in an ethical way. The redistributors and authors listed above make use of the opportunity, but many others let it go to waste.

You can help promote free software development by convincing for-a-fee redistributors to contribute—either by doing development themselves or by donating to development organizations (the FSF and others).

The way to convince distributors to contribute is to demand and expect this of them. This means choosing among distributors partly by how much they give to free software development. Then you can show distributors they must compete to be the one who gives the most.

To make this work, you must insist on numbers that you can compare, such as, “We will give ten dollars to the Foobar project for each disk sold.” A vague commitment, such as “A portion of the profits is donated,” doesn’t give you a basis for comparison. Even a precise fraction “of the profits from this disk” is not very meaningful, since creative accounting and unrelated business decisions can greatly alter what fraction of the sales price counts as profit.

Also, press developers for firm information about what kind of development they do or support. Some kinds make much more long-term difference than others. For example, maintaining a separate version of a GNU program contributes very little; maintaining a program on behalf of the GNU Project contributes much. Easy new ports contribute little, since someone else would surely do them; difficult ports such as adding a new CPU to the GNU compiler or to Mach contribute more; major new features and programs contribute the most.

By establishing the idea that supporting further development is “the proper thing to do” when distributing free software or its documentation for a fee, we can assure a steady flow of resources for making more free software.

Help from Free Software Companies

When choosing a free software business, ask those you are considering how much they do to assist free software development, e.g., by contributing money to free software development or by writing free software improvements themselves for general use. By basing your decision partly on this factor, you can help encourage those who profit from free software to contribute to its growth.

Wingnut (SRA’s special GNU support group) supports the FSF by purchasing Deluxe Distribution packages on a regular basis. In this way they transfer 10% of their income to the FSF. Listing them here is our way of thanking them.

Wingnut Project Phone: +81–3–3234–2611 Software Research Associates, Inc. Fax: +81–3–3942–5174 1–1–1 Hirakawa–cho, Chiyoda–ku Email: info-wingnut@sra.co.jp

   Tokyo 102, Japan  Web: ‘http://www.sra.co.jp/wingnut/’

European Distributor

The Free Software Foundation has a European distribution agent, “GNU Distribution Europe, Belgium,” which accepts orders from Turkey and points Northwest (that’s ‘Europe’).

For many orders, especially smaller ones, the European distributor will provide faster delivery and/or lower cost. For all orders, GNU Europe accepts payment by European check or cash. Consult:

GNU Distribution Europe, Belgium Phone: +32–9–2227542 Sportstraat 28 Fax: +32–9–2224976

   9000 Gent  Email: europe-order@gnu.org
   Belgium  Web: ‘http://www.gnu.org/order/order-europe.html’

GNU/Linux Helps Bring Titanic To Life

In an article originally published in Linux Journal (issue 46), Daryll Strauss, a software engineer at Digital Domain, describes the use of GNU/Linux in generating visual effects for the film Titanic.

Using 200 DEC Alpha-based systems running the Red Hat 4.1 distribution of GNU/Linux, after upgrading the kernel to support the PC164 mainboard, Digital Domain found a performance increase of three to four over SGI systems. The combination of the GNU/Linux OS and Alpha CPUs also delivered the most cost-effective solution to time and processing demands.

Daryll Strauss writes that feature film and television visual effects development has provided a high performance, cost-sensitive, proving ground for GNU/Linux. He concludes that the low entry cost, versatility and interoperability of GNU/Linux is sufficiently attractive to warrant more extensive investigation, experimentation, and deployment.

GNU in Space

The European Space Agency says the Free Software Foundation’s GNU C Compiler is essential to the on-board microprocessors it uses in space.

ESA computer procurement depends on the availability of appropriate tools to satisfy the specific needs of spacecraft software. The use of GCC (the GNU C Compiler) and GNAT (the GNU New York University Ada Translator) is being promoted by ESA as a way of obtaining low-cost compilation systems, especially for the MIL-STD-1750 and SPARC V7 architectures.

GCC and GNAT, an Ada-95 front-end for GCC, have a number of advantages that matter to the ESA:

• they are both free software;

• they have a large and active user community, which compensates for the lack of conventional support and maintenance;

• errors are widely reported and fixes or work-around solutions are published by the same users;

• they require a minimum of computer resources (RAM memory, hard disk space)

• their quality (e.g., the quality of their front-ends) and the quality of the generated code (size and performance) is good, and compares well with proprietary compilers. The ESA found these GNU programs so useful that they gave a contract

to Chris Nettleton Software, a free software company in Farnborough, UK ‘http://www.ccfn.demon.co.uk’, to make modifications on GCC and GNU Ada. Nettleton developed GCC-1750 for the MIL-STD-1750 computer used in spacecraft. The compilation systems will be accompanied by a set of high-level tools and libraries to facilitate the development of software applications for space.

GNUs Flashes

• We’ve Moved, Electronically In case you haven’t noticed…the Free Software Foundation and GNU Project have moved to the domain gnu.org. Our Email address is now gnu@gnu.org, and our web server is now ‘http://www.gnu.org’. Unfortunately, we are no longer able to offer guest accounts.

• New Book/CD of GNU Software for Microsoft Systems At long last, we are publishing the book/CD combination, GNU Software for MS-DOS and MS-Windows. The CD-ROM contains both source code and runnable binaries; the book explains how to install the software, and briefly describes what the various packages are useful for. The book also explains why, to be truly free, you must move away from proprietary operating systems from Microsoft or elsewhere, and use a free operating system such as GNU/Linux.

• X11 Runs on the Hurd The X Window System, specifically Xfree86, has been ported to the GNU

Hurd. See ftp://ftp.nop.or.jp/pub/gnu-0.2/XFree86/3.3.2/, in partic-
ular the files ‘X332-Hurd.tar.gz’ and ‘3.3.2-hurd.*.gz’.

• New Schedule for GNU CD-ROMs We plan to update GNU CD-ROMs more frequently—quarterly, instead of once or twice per year. Subscribers to the Source Code CD-ROM series will probably receive their next CD-ROM before the next bulletin. The GNU Compiler Tools Binaries CD-ROM will be updated when new systems or more current program versions are available. Check our web site for the latest CD-ROM release information.

• New Source Code CD! (see March 1998 Source Code CD-ROMs, page 43) We are currently releasing the March 1998 (Edition 11) Source Code CD-ROMs. Once again, it is a two disk set. These CD-ROMs contain important bug fixes and improvements for many packages, and some new packages. On the CD-ROMs are full distributions of X11R6.3, Emacs, GCC, and current versions of all other GNU Software. See GNU Software, page 16, for more about these packages.

• New/Updated Manuals since Last Bulletin (see Documentation, page 44) Since the last bulletin, we have published updated editions of two of our manuals GAWK: The GNU Awk User’s Guide, revised for gawk version 3.0.3; Texinfo: The GNU Documentation Format, for Texinfo version 3.11.

• Display Ghostscript Funded A year ago, the Free Software Foundation and Net Community called for donations to fund completion of Display Ghostscript—that is, the extension of Ghostscript to support the Display Postscript features. We have now raised the full amount. Work has already started on Display Ghostscript and much progress has been made. Ghostscript has been extended to accept input from a client socket and draw into a client specified window. The DPS client library has been combined with Ghostscript to form a single source code package. Currently specific DPS operators and some extensions are being implemented; such as multiple execution contexts, view clipping, alpha channel, compositing, and type 2 images.

• GTK GTK is the GNU GUI toolkit, which serves as the basis for the GIMP and GNOME. It can be used from C and other compiled programming languages, and also from GUILE. A convenient C++ interface to GTK, called GTK++, is being developed.

• The GIMP  Also see ‘http://www.gimp.org/’

The GIMP is the GNU Image Manipulation Program—a replacement for Adobe Photoshop. Although its developers still considered it to be in the testing stage, many users already regard it as superior to the original.

• Netscape Browser May Become Free—Or May Not In January, Netscape announced plans to release source code for its browser— and perhaps to make it free software. This could be a great day for the free software movement, or a great disappointment, depending on the distribution terms that Netscape uses. Just recently Netscape released a first draft of proposed distribution terms, which are on the border of being free software, but have serious problems. For example, you are not allowed to make a change unless you publish it. Also, linking Netscape code together with code covered by the GNU GPL is impossible; any way of doing this would violate one license or the other. The final decision is supposed to be made by the end of March. For the latest

news, see URL ‘http://www.gnu.org/philosophy/netscape.html’.

• A New FSF T-shirt! (Also see FSF T-shirt, page 47) We have a new T-shirt design. See FSF T-shirt, page 47, for the description. Alas, there is also a new price, $18, due to increased production costs.

Help the Translation Project

GNU is going international! The Translation Project gets users, translators, & maintainers together, so free software will gradually get to speak many native languages. As of December 1997, we have internationalized 27 packages into 17 languages, using 175 translation files; the translation teams have 474 subscribed members.

To complete this Translation Project, we need many people who like their own language and write it well, and who are also able to synergize with other translators speaking the same language as part of “translation teams”.

If you want to start a new team, or want more information on existing teams or other aspects of this project, write to translation@iro.umontreal.ca. See GNU Software, page 16, for information about gettext, the tool the Translation Project uses to help translators and programmers.

GNU & Other Free Software in Japan

Mieko (h-mieko@sra.co.jp) and Nobuyuki Hikichi (hikichi@sra.co.jp)

continue to volunteer for the GNU Project in Japan. They translate each issue of this Bulletin into Japanese and distribute it widely, along with the translation of Version 2 of the GNU General Public License. This translation of the GPL is authorized by the FSF and is available by anonymous FTP from

ftp.sra.co.jp in ‘/pub/gnu/local-fix/GPL2-j’. They also solicit donations

and offer GNU software consulting.

The Hurd JP project is now developing the Hurd in Japan. This project plans to arrange documents and packages for the GNU system, in addition to porting software to the Hurd. For more details, write to

okuji@mbox.kyoto-inet.or.jp; English is ok.

The Japanese mailing list to discuss GPL’ed software and hardware is

no longer active. Ask ishiz@muraoka.info.waseda.ac.jp if you have any

questions about it.

MULE (the MULtilingual Enhancement of GNU Emacs) can handle many character sets at once. See GNU Software, page 16 for some details. It is widely used in Japan and its features have been merged into the principal version of Emacs beginning with release 20. MULE is also available on the March 1998 Source Code CD-ROMs, page 43, and by FTP from sh.wide.ad.jp in

‘/JAPAN/mule’ or etlport.etl.go.jp in ‘/pub/mule’.

The Village Center prints a Japanese translation (ISBN 4-938704-02-1) of the GNU Emacs Lisp Reference Manual and puts the Texinfo source on various bulletin boards. They also print each issue of the Japanese GNU’s Bulletin and publish Nobuyuki & Mieko’s Think GNU (ISBN 4-938704-10-2), perhaps the first non-FSF copylefted publication in Japan. Their address is:

Village Center, Inc. Phone: +81–3–3221–3520

   3–2 Kanda Jinbo-cho  Web: ‘http://www.villagecenter.co.jp’

Chiyoda-ku (in ‘/gnu.html’ for information Tokyo 101, Japan about GNU books)

Addison-Wesley Publishers Japan Ltd. has printed Japanese translations of the GNU Make Manual (ISBN 4-7952-9627-X), the Gawk Manual (ISBN 4-7952-9672-8), the Texinfo Manual (ISBN 4-7952-9684-7), and the GNU Emacs Manual 19.34 (ISBN 4-7952-9684-7), & will print the Japanese Bison Manual (ISBN 4-7952-9628-6) this January. Their address is:

Addison-Wesley Publishers Japan, Ltd. Phone: +81–3–3291–4581 Gyokuroen Building 1–13–19 Sekiguchi, Bunkyo-ku Tokyo 112-0014, Japan

Many groups in Japan now distribute GNU software, including ASCII, a periodical and book publisher.

It is easy to place an order directly with the FSF from Japan. Order at fsforder@gnu.org, where you can also get the FSF Order Form written in Japanese. We encourage you to buy our software CDs: for example, 150 CD-ROM orders at the corporate rate allow the FSF to hire a programmer for one year to write more free software.

The Research Institute for Advanced Information Technology (AITEC) releases ICOT Free Software (IFS) and other IFS related software to the public. IFS, which pertains to the fields of parallel processing & knowledge processing, was developed at ICOT in the Fifth Generation Computer Project & its Follow-on Project.

Besides IFS, AITEC recently released as free software many software systems developed by numerous research groups through AITEC’s research funding program. Through their Web pages, AITEC releases 20 major IFS programs, 80 other IFS programs, and 22 programs developed through AITEC’s FY 1996 research funding program. AITEC will soon release new software systems developed in FY 1997.

By the end of November 1997, more than 10,000 people had accessed AITEC’s site (originally ICOT’s) and more than 41,000 IFS files had been transferred since their first release in 1992.

For more information, please see URL ‘http://www.icot.or.jp/’. The ImageSearcher is an object-oriented program to search images by

specifying properties of the image itself, without relying on the name or attributes of the file. It searches focusing on typical color, average luminance, nine colors, image extent, center spectra, etc. It runs on VisualWorks 2.5.1 (Smalltalk). As a result of the “eMMa Project” sponsored by IPA and SRA (written by Atsushi Aoki), the source code and documentation are distributed under the GPL as free software, and are available via FTP from host ftp.sra.co.jp in the directory

‘/pub/lang/smalltalk/ipa/VisualWorks2.5/’.

Forthcoming GNUs

Information about the current status of released GNU programs can be found in GNU Software, page 16. Here is some news of future plans.

• GNU Privacy Guard The GNU Privacy Guard is a free program for private communication using public key encryption. It will be released under the GNU GPL, and will be patent-free all around the world. Most of the code is written, but we can’t predict yet when the release will be. After the GNU Private Guard is released, we hope to follow it with a free replacement for SSH, and then, if possible, free software for secure financial transations on the World Wide Web.

• E-scape E-scape is a graphical web browser currently in development. We plan to support CSS1, PNG, tables, and frames. XML support and client-side scripting will likely be added eventually. E-scape is on hold right now. We don’t know whether a free GNU web browser is still needed because we don’t know whether the Netscape browser will be released on suitable terms. By April we will have cancelled E-scape, or resumed work at full speed.

• GNOME GNOME is the GNU GUI desktop project, started by Miguel de Icaza in August 1997. It is based on the GTK GUI toolkit, and uses GUILE for extensibility. GNOME replaces the Teak project, which had been placed on hold while Jim Blandy finished the development of GUILE. GNOME provides a set of application framework libraries to facilitate making all applications consistent and hiding all of the configuration, session management, help and common user interface details from the programmer. We are using MICO, a GPL/LGPL implementation of CORBA, to export the functionality of our bigger applications as servers: editing interface, text editing, image editing, file management, document display, dictionary, calendar/tasks/rolodex. GNOME development is being carried out by numerous volunteers together with several programmers funded by Red Hat Software.

• gnusql

gnusql (formerly gss) is the GNU SQL Server, a multiuser relational DBMS. An alpha release is currently available. For info on updates, paths, and most recent releases as well as links to related documentation, software, and mailing

lists, see ‘http://www.ispras.ru/~gsql’.

• GNU Emacs (For current status, see GNU Software Now Available, page 17) The next Emacs release, 20.3, will once again count buffer positions and string indices in characters, not bytes, even when you use multibyte characters. Future versions of Emacs will have support for variable-width fonts (already written) and inclusion of graphics in a document. Also, perhaps, the ability to save the undo history in a file (which allows you to undo older changes in the history). Our long term plan is to move it in the direction of a WYSIWYG word processor and make it easier for beginners to use.

• GNUstep (Also see “Objective-C Library” in GNU Software, page 16.) OpenStep is an object-oriented application programming interface specification being proposed as an open object standard. Since its announcement, there has been much interest in a GNU implementation, named GNUstep. Work has begun on GNUstep, starting with a library written in Objective-C. Much remains to be done to bring this library close to the OpenStep specifications. Volunteers should contact gnustep-maintainer@gnu.org.

Also see ‘http://www.gnustep.org/’.

• C Interpreter We hope to add interpreter facilities to our compiler and debugger. This task is partly finished. GCC generates byte code for all supported languages, but that support is in flux at this time. A new effort to finish this work has begun. To make this work usable, we need to enhance GDB to load the byte code dynamically. We would also like support for compiling just a few selected functions in a file. Due to limited resources, the FSF cannot fund this. Interested volunteers should contact gnu@gnu.org.

• Fortran (For info on f2c & GCC, see GNU Software Now Available, page 17) The GNU Fortran (g77) front end is stable, but more work is needed to bring its overall packaging, feature set, and performance up to the levels the Fortran community expects. Tasks to be done include: improving documentation and diagnostics; speeding up compilation, especially for large, densely initialized data tables; completing existing support for INTEGER*2, INTEGER*8, and similar features; allowing intrinsics in PARAMETER statements; and providing debug information on COMMON and EQUIVALENCE variables. We don’t know when these things will be done, but hope some will be finished in the coming months. You can speed progress by working on them or by offering funding. A mailing list exists for announcements about g77. To subscribe, ask

info-gnu-fortran-request@gnu.org. To contact the developer of g77 or

get current status, write or finger fortran@gnu.org.

• Oleo (For current status, see GNU Software Now Available, page 17) Oleo is the spreadsheet program for the GNU project. We’ve brushed the dust off, and are working on giving Oleo a facelift. In Oleo’s next release, it will support GTK++, as well as link in with Plotutils for graph creation. We are also “internationalizing” Oleo using GNU Gettext, to handle messages in languages other than English. Macros in Oleo will be handled in Guile to allow for the most flexible language possible. Many reported bugs from the last release (Oleo 1.6) have been fixed as well. Lastly, Oleo now has a complete set of documentation included in the package in Texinfo format.

• The Dictionary Project The FSF has a copy of the unabridged Century Dictionary, now in the public domain, and we want to put it online. We tried OCR, but it wasn’t reliable enough. It looks like the only way to do this is to have people type it in. The job will need many volunteers; that means it first needs a manager with a can-do attitude and substantial time. If you want to volunteer to be the manager, please write to gnu@gnu.org. This project provides a way for people without programming skills or money to contribute to the GNU Project.

GNU Software in the Year 2000

The Free Software Foundation does not provide warranties for its software. We can’t afford to. So we can’t promise that GNU software has no Year 2000 bugs, any more than we could promise you the same thing about another sort of bug. But we can tell you some reasons why such bugs are probably very few.

The main reason is theoretical. GNU systems, and Unix-like systems generally, represent date and time as a 32-bit integer, counting seconds from the beginning of 1970. This 32-bit count will overflow in 2038; but there will be no problem in that year, because by then all systems will have redefined time_t to be a 64-bit integer.

We also have some practical evidence that there are few problems. Some users running a Linux-based GNU system, specifically Debian GNU/Linux (see ‘http://www.debian.org’), used their machines for a while with the clocks set forward to the year 2000. They reported no special problems. Of course, that is not an exhaustive test, but it suggests that there are not enough Year 2000 bugs in GNU software to cause major or lasting difficulties.

If you would like to help us eliminate any Year 2000 bugs, we suggest that for a few days you set the clock on one of your machines ahead a few years. You could also set it to Dec 31, 1999, and see if anything unusual happens as the clock advances to the next century while you are working.

If you do find a problem, please send a bug report about it—then the bug will most likely get fixed in a new release, well before the year 2000 rolls around.

Whether you encounter a problem or not, we would appreciate hearing which programs you tested in this way, and for how long a period of actual working time. Please inform gnu@gnu.org of the results you get.

You can check that you are using the latest release of any particular GNU program by comparing version numbers with one of our FTP mirrors (see How to Get GNU Software, page 46).

Free Software Support

The Free Software Foundation does not provide technical support. Our mission is developing software, because that is the most time-efficient way to increase what free software can do. We leave it to others to earn a living providing support. We see programmers as providing a service, much as doctors and lawyers do now; both medical and legal knowledge are freely redistributable, but their practitioners charge for service.

The GNU Service Directory is a list of people who offer support & other consulting services. See ‘/pub/gnu/GNUinfo/SERVICE’ at a GNU FTP host (see How to Get GNU Software, page 46),

‘etc/SERVICE’ in the Emacs distribution, ‘SERVICE’ in the GCC distribution,

or URL ‘http://www.gnu.org/prep/service.html’ on the Web.

Write to gnu@gnu.org to be listed (or to get a copy). Service providers who share their income with the FSF are listed in Help from Free Software Companies, page 8.

If you find a deficiency in any GNU software or GNU documentation, we want to know. We have many Internet mailing lists for bug reports, announcements, and questions; they are also gatewayed into USENET news as our gnu.* newsgroups. For the Directory of GNU Mailing Lists and Newsgroups, see ‘/pub/gnu/GNUinfo/MAILINGLISTS’ on a GNU FTP host (see How to Get GNU Software, page 46),

  URL ‘http://www.gnu.org/prep/mailinglists.html’ on the Web, or

‘etc/MAILINGLISTS’ in the Emacs distribution; or write to gnu@gnu.org.

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; they are part of preparing a new improved version that helps all users. We may send you a patch for a bug so that you can help us test the fix and ensure its quality. If your bug report does not evoke a solution from us, you may still get one from another user on our bug report mailing lists. Otherwise, use the Service Directory.

Please do not ask us to help you install software or learn how to use it—but do tell us how an installation script fails or where documentation is unclear.

When choosing a service provider, ask those you are considering how much they do to assist free software development, e.g., by contributing money to free software development or by writing free software improvements themselves for general use. By basing your decision partially on this factor, you can encourage those who profit from free software to contribute to its growth.

GNU Software

All our software is available by

FTP; see How to Get GNU Software, page 46. We also offer CD-ROMs, page 41, and printed Documentation, page 44, which includes manuals and reference cards.

In those articles, describing the contents of each medium, the version number listed after each program name was current when we published this Bulletin. When you order a newer CD-ROM, some of the programs may be newer and so the the version numbers higher. See the FSF Order Form, in the centerfold, for ordering information.

Some of the contents of our FTP distributions are compressed. We have software on our FTP sites to uncompress these files. Due to patent troubles with compress, we use another compression program, gzip.

You may need to build GNU make before you build our other software. Some vendors supply no make utility at all and some native make programs lack the VPATH feature essential for using the GNU configure system to its full extent. The GNU make sources have a shell script to build make itself on such systems.

We no longer include a cross reference from program names to package names in this Bulletin, because it has become too large. You can FTP the current list from the file ‘/pub/gnu/ProgramIndex’ on a GNU FTP host (see How to Get GNU Software, page 46).

We welcome all bug reports and enhancements sent to the appropriate electronic mailing list (see Free Software Support, page 15).

Configuring GNU Software

We are using Autoconf, a uniform scheme for configuring GNU software packages in order to compile them (see “Autoconf” and “Automake” below, in this article). The goal is to have all GNU software support the same alternatives for naming machine and system types.

Ultimately, it will be possible to configure and build the entire system all at once, eliminating the need to configure each individual package separately.

You can also specify both the host and target system to build crosscompilation tools. Most GNU programs now use Autoconf-generated configure scripts.

GNU and Recommended Software Now Available

For future programs and features, see Forthcoming GNUs, page 13. Key to cross reference:

BinCD Mar 98 Binaries CD  SrcCD Mar 98 Source CD

[FSFman] shows that we sell a manual for that package. [FSFrc] shows we sell a reference card for that package. To order them, see the FSF Order Form, in the centerfold. See Documentation, page 44, for more information on the manuals. Source code for each manual or reference card is included with each package.

• abuse (SrcCD) The recently-freed program abuse is a dark, side-scrolling game with Robotron-esque controls: you control your movement with the keyboard and fire & aim with the mouse. You can get more info at

‘http://crack.com/games/abuse’.

• acct (SrcCD) acct is a system accounting package. It includes the programs ac (summarize login accounting), accton (turn process accounting on or off), last (show who has logged in recently), lastcomm (show which commands have been used recently), sa (summarize process accounting), dump-utmp (print a utmp file in human-readable format), & dump-acct (print an acct or pacct file in human-readable format).

• acm (SrcCD) acm is a LAN-oriented, multiplayer, aerial combat simulation that runs under the X Window System. Players engage in air to air combat against one another using heat seeking missiles and cannons. We are working on a more accurate simulation of real airplane flight characteristics.

• aegis (SrcCD) Aegis is a transaction-based software configuration management system. It provides a framework within which a team of developers may work on many changes to a program concurrently, and Aegis coordinates integrating these changes back into the master source of the program, with as little disruption as possible.

• Apache Also see ‘http://www.apache.org/’ (SrcCD) Apache is an HTTP server used on almost 50% of the Web sites on the Internet. It has an extensive API for modular enhancements, many features, and a large family of add-ons; it is highly flexible, runs on many popular operating systems, and has an active development group and user community.

• Autoconf (SrcCD) Autoconf produces shell scripts which automatically configure source code packages. These scripts adapt the packages to many kinds of Unix-like systems without manual user intervention. Autoconf creates a script for a package from a template file which lists the operating system features which the package can use, in the form of m4 macro calls. Autoconf requires GNU m4 to operate, but the resulting configure scripts it generates do not.

• Automake (SrcCD) Automake is a tool for generating ‘Makefile.in’ files for use with Autoconf. The generated makefiles are compliant with GNU Makefile standards.

• BASH (SrcCD) GNU’s shell, BASH (Bourne Again SHell), is compatible with the Unix sh and offers many extensions found in csh and ksh. BASH has job control, csh-style command history, command-line editing (with Emacs and vi modes built-in), and the ability to rebind keys via the readline library. BASH conforms to the POSIX 1003.2-1992 standard.

• bc (SrcCD) bc is an interactive algebraic language with arbitrary precision numbers. GNU bc follows the POSIX 1003.2-1992 standard with several extensions, including multi-character variable names, an else statement, and full Boolean expressions. The RPN calculator dc is now distributed as part of the same package, but GNU bc is not implemented as a dc preprocessor.

• BFD (BinCD, SrcCD) The Binary File Descriptor library allows a program which operates on object files (e.g., ld or GDB) to support many different formats in a clean way. BFD provides a portable interface, so that only BFD needs to know the details of a particular format. One result is that all programs using BFD will support formats such as a.out, COFF, and ELF. BFD comes with Texinfo source for a manual (not yet published on paper). At present, BFD is not distributed separately; it is included with packages that use it.

• Binutils (BinCD, SrcCD) Binutils includes these programs:

addr2line, ar, c++filt, gas, gprof, ld, nm, objcopy, objdump, ranlib,
size, strings, & strip.

Binutils version 2 uses the BFD library. The GNU assembler, gas, supports the a29k, Alpha, ARM, D10V, H8/300, H8/500, HP-PA, i386, i960, M32R, m68k, m88k, MIPS, Matsushita 10200 and 10300, NS32K, PowerPC, RS/6000, SH, SPARC, Tahoe, Vax, and Z8000 CPUs, and attempts to be compatible with many other assemblers for Unix and embedded systems. It can produce mixed C and assembly listings, and includes a macro facility similar to that in some other assemblers. GNU’s linker, ld, supports shared libraries on many systems, emits source-line numbered error messages for multiply-defined symbols and undefined references, and interprets a superset of AT&T’s Linker Command Language, which gives control over where segments are placed in memory. objdump can disassemble code for most of the CPUs listed above, and can display other data (e.g., symbols and relocations) from any file format read by BFD.

• Bison (BinCD, SrcCD) [FSFman, FSFrc] Bison is an upwardly compatible replacement for the parser generator yacc. Texinfo source for the Bison Manual and reference card are included.

• C Library (glibc) (BinCD, SrcCD) [FSFman] The GNU C library supports ISO C-1989, ISO C/amendment 1-1995, POSIX 1003.1-1990, POSIX 1003.1b-1993, POSIX 1003.1c-1995 (when the underlying system permits), & most of the functions in POSIX 1003.2-1992. It is nearly compliant with the extended XPG4.2 specification which guarantees upward compatibility with 4.4BSD & many System V functions. When used with the GNU Hurd, the C Library performs many functions of the Unix system calls directly. Mike Haertel has written a fast malloc which wastes less memory than the old GNU version. GNU stdio lets you define new kinds of streams, just by writing a few C functions. Two methods for handling translated messages help writing internationalized programs & the user can adopt the environment the program runs in to conform with local conventions. Extended getopt functions are already used to parse options, including long options, in many GNU utilities. The name lookup functions now are modularized which makes it easier to select the service which is needed for the specific database & the document interface makes it easy to add new services. Texinfo source for the GNU C Library Reference Manual is included (see Documentation, page 44). Previous versions of the GNU C library ran on a large number of systems. The architecture-dependent parts of the C library have not been updated since development on version 2.0 started, so today it runs out of the box only on GNU/Hurd (all platforms GNU/Hurd also runs on) & GNU/Linux (ix86, Alpha, m68k, MIPS, Sparc, PowerPC; work is in progress for ARM). Other architectures will become available again as soon as somebody does the port.

• Calc (SrcCD) [FSFman, FSFrc] Calc (written by Dave Gillespie in Emacs Lisp) is an extensible, advanced desk calculator & mathematical tool that runs as part of GNU Emacs. You can use Calc as a simple four-function calculator, but it has many more features including: choice of algebraic or RPN (stack-based) entry; logarithmic, trigonometric, & financial functions; arbitrary precision; complex numbers; vectors; matrices; dates; times; infinities; sets; algebraic simplification; & differentiation & integration. It outputs to gnuplot, & comes with source for a manual & reference card (see Documentation, page 44).

• cfengine  (SrcCD)

cfengine is used to maintain site-wide configuration of a heterogeneous Unix network using a simple high level language. Its appearance is similar to rdist, but allows many more operations to be performed automatically. See Mark Burgess, “A Site Configuration Engine”, Computing Systems, Vol. 8, No. 3 (ask office@usenix.org how to get a copy).

• Chess (SrcCD) GNU Chess enables you to play a game of chess with a computer instead of a person. It is useful to practice with when there are significant spare cpu cycles and a real person is unavailable. The program offers a plain terminal interface, one using curses, and a reasonable X Windows interface xboard. Best results are obtained by compiling with GCC. Improvements this past year are in the Windows-compatible version, mostly bugfixes. Stuart Cracraft started the GNU mascot back in the mid-1980’s. John Stanback (and innumerable contributors) are responsible for GNU’s brain development and its fair play. Acknowledgements for the past year’s work are due Conor McCarthy. Send bugs to bug-gnu-chess@gnu.org & general comments to info-gnu-chess@gnu.org. Visit the author’s Web site at

‘http://www.earthlink.net/~cracraft/index.html’. Play GNU Chess
on the Web at ‘http://www.delorie.com/game-room/chess’.

• CLISP (SrcCD) CLISP is a Common Lisp implementation by Bruno Haible & Michael Stoll. It mostly supports the Lisp described by Common LISP: The Language (2nd edition) & the ANSI Common Lisp standard. CLISP includes an interpreter, a byte-compiler, a large subset of CLOS & a foreign language interface. The user interface language (English, German, French, Spanish) can be chosen at run time. An X11 API is available through CLX & Garnet. CLISP needs only 2 MB of memory & runs on all kinds of systems (Unix, MS-DOS, OS/2, Windows NT, Windows 95, Amiga 500–4000, Acorn RISC PC). See also item “Common Lisp”, which describes GCL, a complete Common Lisp implementation with compiler.

• CLX (SrcCD) CLX is an X Window interface library for GCL. This is separate from the built-in TK interface.

• Common Lisp (gcl) (SrcCD) GNU Common Lisp (GCL, formerly known as Kyoto Common Lisp) is a compiler & interpreter for Common Lisp. GCL is very portable & extremely efficient on a wide class of applications, & compares favorably in performance with commercial Lisps on several large theorem–prover & symbolic algebra systems. GCL supports the CLtL1 specification but is moving towards the proposed ANSI standard. GCL compiles to C & then uses the native optimizing C compiler (e.g., GCC). A function with a fixed number of args & one value turns into a C function of the same number of args, returning one value—so GCL is maximally efficient on such calls. Its conservative garbage collector gives great freedom to the C compiler to put Lisp values in registers. It has a source level Lisp debugger for interpreted code & displays source code in an Emacs window. Its profiler (based on the C profiling tools) counts function calls & the time spent in each function. There is now a built-in interface to the Tk widget system. It runs in a separate process, so users may monitor progress on Lisp computations or interact with running computations via a windowing interface. There is also an Xlib interface via C (xgcl-2). CLX runs with GCL, as does PCL (see “PCL” later in this article). GCL version 2.2.2 is released under the GNU Library General Public License.

• cook (SrcCD) Cook is a tool for constructing files, and maintaining referential integrity between files. It is given a set of files to create, and recipes of how to create and maintain them. In any non-trivial program there will be prerequisites to performing the actions necessary to creating any file, such as include files. The cook program provides a mechanism to define these. Some features which distinguish Cook include a strong procedural description language, and fingerprints to supplement file modification time stamps. There is also a make2cook utility included to ease transition.

• cpio (SrcCD) cpio is an archive program with all the features of SVR4 cpio, including support for the final POSIX 1003.1 ustar standard. mt, a program to position magnetic tapes, is included with cpio.

• CVS (SrcCD) CVS is a version control system (like RCS or SCCS) which allows you to keep old versions of files (usually source code), keep a log of who, when, and why changes occurred, etc. It handles multiple developers, multiple directories, triggers to enable/log/control various operations, and can work over a wide area network. It does not handle build management or bug-tracking; these are handled by make and GNATS, respectively.

• cxref (SrcCD) cxref is a program that will produce documentation (in LaTeX or HTML) including cross-references from C program source code. It has been designed to work with ANSI C, incorporating K&R, and most popular GNU extensions. The documentation for the subject program is produced from comments in the code that are appropriately formatted. The cross referencing comes from the code itself and requires no extra work.

• DDD (SrcCD) The Data Display Debugger (DDD) is a common graphical user interface to GDB, DBX, and XDB, the popular Unix debuggers. DDD provides a graphical data display where complex data structures can be explored incrementally and interactively. DDD has been designed to compete with well-known commercial debuggers; as of release 2.1.1, DDD also compiles and runs with LessTif, a free Motif clone, without loss of functionality. For more details,

see the DDD Web page at ‘http://www.cs.tu-bs.de/softech/ddd/’.

• DejaGnu (SrcCD) DejaGnu is a framework to test programs with a single front end for all tests. DejaGnu’s flexibility & consistency makes it easy to write tests. DejaGnu will also work with remote hosts and embedded systems. DejaGnu comes with expect, which runs scripts to conduct dialogs with programs.

• Diffutils (SrcCD) GNU diff compares files showing line-by-line changes in several flexible formats. It is much faster than traditional Unix versions. The Diffutils package has diff, diff3, sdiff, & cmp. Future plans include support for internationalization (e.g., error messages in Chinese) & some non-Unix PC environments, & a library interface that can be used by other free software.

• DJGPP Also see “GCC” below (BinCD) DJ Delorie has ported GCC/G++ to i386s running DOS. DJGPP has a 32-bit i386 DOS extender with a symbolic debugger, development libraries, & ports of Bison, flex, & Binutils. Full source code is provided. It needs at least 5MB of hard disk space to install & 512K of RAM to use. It supports SVGA (up to 1024x768), XMS & VDISK memory allocation, himem.sys, VCPI (e.g., QEMM, DESQview, & 386MAX), & DPMI (e.g., Windows 3.x, OS/2, QEMM, & QDPMI). Version 2 was released in Feb. 1996, & needs a DPMI environment; a free DPMI server is included.

Web at ‘http://www.delorie.com/djgpp/’ or FTP from ftp.simtel.net

in ‘/pub/simtelnet/gnu/djgpp/’ (or a SimTel mirror site). Ask listserv@delorie.com, to join a DJGPP users mailing list.

• dld (SrcCD) 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. dld supports a.out object types on the following platforms: Convex C-Series (BSD), i386/i486/Pentium (GNU/Linux), Sequent Symmetry i386 (Dynix 3), Sun-3 (SunOS 3 & 4), Sun-4 (SunOS 4), & VAX (Ultrix).

• doschk (SrcCD) This program is a utility to help software developers ensure that their source file names are distinguishable on System V platforms with 14-character filenames and on MS-DOS systems with 8+3 character filenames.

• ed (SrcCD) ed is the standard text editor. It is line-oriented and can be used interactively or in scripts.

• Elib (SrcCD) Elib is a small library of Emacs Lisp functions, including routines for using AVL trees and doubly-linked lists.

• Elisp archive (SrcCD) This is a snapshot of Ohio State’s GNU Emacs Lisp FTP Archive. FTP it

from archive.cis.ohio-state.edu in ‘/pub/gnu/emacs/elisp-archive’.

• Emacs [FSFman(s), FSFrc] In 1975, Richard Stallman developed the first Emacs, an extensible, customizable real-time display editor & computing environment. GNU Emacs is his second implementation. It offers true Lisp—smoothly integrated into the editor—for writing extensions & provides an interface to the X Window System. It runs on Unix, MS-DOS, & Windows NT or 95. In addition to its powerful native command set, Emacs can emulate the editors vi & EDT (DEC’s VMS editor). Emacs has many other features which make it a full computing support environment. Source for the GNU Emacs Manual & a reference card comes with the software. Sources for the GNU Emacs Lisp Reference Manual and Programming in Emacs Lisp: An Introduction are distributed in separate packages. See Documentation, page 44.

• Emacs 20 (SrcCD) [FSFman(s), FSFrc] The new features in Emacs 20 include support for many languages and many character codes (the MULE facility) and a new convenient customization feature. The text-filling commands handle indented and bulleted paragraphs conveniently; there are new help facilities for looking up documentation about functions and symbols in various languages. A new method of file-locking works even when using NFS. Some dired commands have been made more systematic. We believe Emacs 20 operates on the same systems as Emacs 19, but we do not have confirmation for all of them.

• Emacs 19 (SrcCD) [FSFman(s), FSFrc] Emacs 19 works with character-only terminals & with the X Window System (with or without an X toolkit). It also runs on MS-DOS, MS Windows, and with multiple-window support on MS Windows 95/NT. Emacs 19 works on: Acorn RISC (RISCiX); Alliant FX/2800 (BSD); Alpha (OSF/1 or GNU/Linux); Apollo (DomainOS); Bull DPX/2 2nn & 3nn (SysV.3) & sps7 (SysV.2); Clipper; Convex (BSD); Cubix QBx (SysV); Data General Aviion (DGUX); DEC MIPS (Ultrix 4.2, OSF/1, not VMS); Elxsi 6400 (SysV); Gould Power Node & NP1 (4.2 & 4.3BSD); Harris Night Hawk 1200, 3000, 4000 & 5000 (cxux); Harris Night Hawk Power PC (powerunix); Honeywell XPS100 (SysV); HP 9000 series 200, 300, 700, 800 (but not 500) (4.3BSD; HP-UX 7, 8, 9; NextStep); Intel i386/i486/Pentium (GNU/Hurd, GNU/Linux, 386BSD, AIX, BSDI/386, FreeBSD, Esix, ISC, MS-DOS, NetBSD, SCO3.2v4, Solaris, SysV, Xenix, WindowsNT, Windows95); IBM RS/6000 (AIX 3.2) & RT/PC (AIX, BSD); Motorola Delta 147 & 187 (SysV.3, SysV.4, m88kbcs); National Semiconductor 32K (Genix); NeXT (BSD, Mach 2 w/ NeXTStep 3.0); Paragon (OSF/1); Prime EXL (SysV); Pyramid (BSD); Sequent Symmetry (BSD, ptx); Siemens RM400 & RM600 (SysV); SGI Iris 4D (Irix 4.x & 5.x); Sony News/RISC (NewsOS); Stardent i860 (SysV); Sun 3 & 4, SPARC 1, 1+, 2, 10, Classic (SunOS 4.0, 4.1, Solaris 2.0–2.3); Tadpole 68k (SysV); Tektronix XD88 (SysV.3) & 4300 (BSD); & Titan P2 & P3 (SysV).

• Emacs 18 (SrcCD) [FSFrc] Emacs 18 is several years old. We no longer maintain it, but still distribute it for those using platforms which Emacs 19 does not support.

• enscript  (SrcCD)

enscript is an upwardly-compatible replacement for the Adobe enscript program. It formats ASCII files (outputting in Postscript) and stores generated output to a file or sends it directly to the printer.

• es (SrcCD) es is an extensible shell (based on rc) with first-class functions, lexical scope, exceptions, and rich return values (i.e., functions can return values other than just numbers). es’s extensibility comes from the ability to modify and extend the shell’s built-in services, such as path searching and redirection. Like rc, it is great for both interactive use and scripting, particularly since its quoting rules are much less baroque than the C and Bourne shells.

• Exim (SrcCD) Exim is an Internet mail transfer agent, similar in style to Smail 3. It can handle relatively high volume mail systems, header rewriting, control over which hosts/nets may use it as a relay, blocking of unwanted mail from specified hosts/nets/senders, and multiple local domains on one mail host (“virtual domains”) with several options for the way these are handled.

• f2c Also see “Fortran” below & in Forthcoming GNUs, page 13. (SrcCD) f2c converts Fortran-77 source into C or C++, which can be compiled with GCC or G++. Get bug fixes by FTP from site netlib.bell-labs.com or by email from netlib@netlib.bell-labs.com. For a summary, see the file

‘/netlib/f2c/readme.gz’.

• ffcall (SrcCD) ffcall is a C library for implementing foreign function calls in embedded interpreters by Bill Triggs and Bruno Haible. It allows C functions with arbitrary argument lists and return types to be called or emulated (callbacks).

• Fileutils (SrcCD)

The Fileutils are: chgrp, chmod, chown, cp, dd, df, dir, dircolors, du,
install, ln, ls, mkdir, mkfifo, mknod, mv,
rm, rmdir, sync, touch, & vdir.

• Findutils (SrcCD) find is frequently used both interactively and in shell scripts to find files which match certain criteria and perform arbitrary operations on them. Also included are locate, which scans a database for file names that match a pattern, and xargs, which applies a command to a list of files.

• Finger (SrcCD) GNU Finger has more features than other finger programs. For sites with many hosts, a single host may be designated as the finger server host and other hosts at that site configured as finger clients. The server host collects information about who is logged in on the clients. To finger a user at a GNU Finger site, a query to any of its client hosts gets useful information. GNU Finger supports many customization features, including user output filters and site-programmable output for special target names.

• flex (BinCD, SrcCD) [FSFman, FSFrc] flex is a replacement for the lex scanner generator. flex was written by Vern Paxson of the Lawrence Berkeley National Laboratory and generates far more efficient scanners than lex does. Sources for the Flex Manual and reference card are included (see Documentation, page 44).

• Fontutils (SrcCD) The Fontutils convert between font formats, create fonts for use with Ghostscript or TEX (starting with a scanned type image & converting the bitmaps to outlines), etc. It includes:

bpltobzr,
bzrto,
charspace,
fontconvert,
gsrenderfont,
imageto,
imgrotate,
limn,

&

xbfe.

• Fortran (g77) Also see Forthcoming GNUs, page 13 (BinCD, SrcCD) GNU Fortran (g77), developed by Craig Burley, is available for public beta testing on the Internet. For now, g77 produces code that is mostly object-compatible with f2c & uses the same run-time library (libf2c).

• gawk (SrcCD) [FSFman] gawk is upwardly compatible with the latest POSIX specification of awk. It also provides several useful extensions not found in other awk implementations. Texinfo source for the The GNU Awk User’s Guide comes with the software (see Documentation, page 44).

• gcal (SrcCD) gcal is a program for printing calendars. It displays different styled calendar sheets, eternal holiday lists, and fixed date warning lists.

• GCC (BinCD, SrcCD) [FSFman] Version 2 of the GNU C Compiler supports the languages C, C++, and Objective-C; the source file name suffix or a compiler option selects the language. (Also see “GNAT” later in this article for Ada language supports.) Objective-C support was donated by NeXT. The runtime support needed to run Objective-C programs is now distributed with GCC. (This does not include any Objective-C classes aside from object, but see “GNUstep” in Forthcoming GNUs, page 13.) G++ seeks to be compliant with the ANSI C++ language standard. GCC is a fairly portable optimizing compiler which performs many optimizations. GCC can open-code most arithmetic on 64-bit values (type long long int). It supports extended floating point (type long double) on the 68k; other machines will follow. GCC supports full ANSI C, traditional C, & GNU C extensions (including: nested functions support, nonlocal gotos, & taking the address of a label).

GCC can generate a.out, COFF, ELF, & OSF-Rose files when used with a suitable assembler. It can produce debugging information in these formats: BSD stabs, COFF, ECOFF, ECOFF with stabs, & DWARF. GCC generates code for many CPUs, including the a29k, Alpha, arc, ARM, AT&T, DSP1610, Clipper, Convex cN, Elxsi, Fujitsu Gmicro, i370, i860, i960, MIL-STD-1750a, MIPS, m32r, mn10200, mn10300, ns32k, PDP-11, Pyramid, ROMP, RS/6000, SH, SPUR, Tahoe, V850, VAX, & we32k. Position-independent code is generated for the Clipper, Hitachi H8/300, HP–PA (1.0 & 1.1), i386/i486/Pentium, m68k, m88k, SPARC, & SPARClite. Operating systems supported include: GNU/Hurd, GNU/Linux, ACIS, AIX, AOS, BSD, Clix, Concentrix, Ctix, DG/UX, Dynix, FreeBSD, Genix, HP-UX, Irix, ISC, Luna, LynxOS, Minix, NetBSD, NewsOS, NeXTStep, OS/2, OSF, OSF-Rose, RISCOS, SCO, Solaris 2, SunOS 4, System/370, SysV, Ultrix, Unos, VMS, & Windows/NT.

Using the configuration scheme for GCC, building a cross-compiler is as easy as building a native compiler. Texinfo source for the Using and Porting GNU CC manual is included with GCC (see Documentation, page 44).

• GDB (BinCD, SrcCD) [FSFman, FSFrc] GDB, the GNU DeBugger, is a source-level debugger for C, C++, & Fortran. It provides partial support for Modula-2 & Chill. GDB can debug both C & C++, & will work with executables made by many different compilers; but, C++ debugging will have some limitations if you do not use GCC. GDB has a command line user interface, and Emacs has GDB mode as an interface. An X interface for GDB, called DDD, is described above. Executable files and symbol tables are read via the BFD library, which allows a single copy of GDB to debug programs with multiple object file formats (e.g., a.out, COFF, ELF). Other features include a rich command language, remote debugging over serial lines or TCP/IP, and watchpoints (breakpoints triggered when the value of an expression changes). GDB uses a standard remote interface to a simulator library which includes simulators for the ARM, Hitachi H8/300, Hitachi SH, & PowerPC. GDB can perform cross-debugging. To say that GDB targets a platform means it can perform native or cross-debugging for it. To say that GDB can host a given platform means that it can be built on it, but cannot necessarily debug native programs. Sources for the manual, Debugging with GDB, and a reference card are included (see Documentation, page 44).

• gdbm (SrcCD) gdbm is the GNU replacement for the traditional dbm and ndbm libraries. It implements a database using quick lookup by hashing. gdbm does not ordinarily make sparse files (unlike its Unix and BSD counterparts).

• Generic NQS (SrcCD) Generic NQS is a network queuing system for spreading batch jobs across a network of machines. It is designed to be simple to install on a heterogeneous network of machines, and has optimizations for running on the high end, symmetric multiprocessing servers that are currently on the market. It is available for many more Unix variants than any other comparable product, and inter-operates with other NQS systems, including Cray’s NQE.

• geomview See ‘http://www.geom.umn.edu/software/geomview’ (SrcCD)

geomview is an interactive geometry viewing program, which requires Motif or LessTif and uses X, GL, or OpenGL graphics. It allows multiple independently controllable objects and cameras. External programs may drive desired aspects of the viewer, e.g. loading changing geometry or controlling motion, while allowing interactive mouse-and-GUI control of everything else. Controllable features include motion, appearance (wireframe, shading, lighting and material properties), mouse-based selection, snapshoting (PPM or SGI image, Postscript, and RenderMan formats), display in hyperbolic and spherical spaces, and projection from higher dimensions. Includes converters to display Mathematica and Maple 3-D graphics, and limited conversion to/from VRML.

• gettext Also see Help the Translation Project, page 11 (SrcCD) The GNU gettext tool set has everything maintainers need to internationalize a package’s user messages.

Once a package has been internationalized, gettext’s many tools help translators localize messages to their native language and automate handling the translation files.

• gforth (SrcCD) gforth is a fast, portable implementation of the ANS Forth language.

• Ghostscript (SrcCD) Ghostscript is an interpreter for the Postscript and PDF graphics languages. The current version of GNU Ghostscript, 3.33, includes a Postscript Level 2 interpreter and a PDF 1.1 interpreter (except for encryption). Significant new features include the ability to convert PDF to Postscript. Ghostscript executes commands in the Postscript and PDF languages by writing directly to a printer, drawing on an X window, or writing to files for printing later or manipulating with other graphics programs. Ghostscript includes a C-callable graphics library (for client programs that do not want to deal with the Postscript language). It also runs on MS-DOS, MS Windows, OS/2, OpenVMS, and Mac OS (native on both 68K and PowerPC) but please do not ask the FSF staff any questions about this; we do not use these operating systems.

• Ghostview (SrcCD) Tim Theisen, ghostview@cs.wisc.edu, created Ghostview, a previewer for multi-page files with an X Window interface. Ghostview & Ghostscript work together; Ghostview creates a viewing window & Ghostscript draws in it.

• The GIMP  Also see ‘http://www.gimp.org/’

The GIMP is the GNU Image Manipulation Program—a replacement for Adobe Photoshop. Although it is still considered to be in the testing stage, many users already regard it as superior to the original.

• GIT (SrcCD) The GNU Interactive Tools package includes: an extensible file system browser, an ASCII/hex file viewer, a process viewer/killer, & other related utilities & shell scripts. It can be used to increase the speed & efficiency of many daily tasks, such as copying & moving files & directories, invoking editors, compressing/uncompressing files, creating & expanding archives, compiling programs, sending mail, etc. It looks nice, has colors (if the standard ANSI color sequences are supported), & is user-friendly.

• gmp (SrcCD) GNU mp is a library for arithmetic on arbitrary precision integers, rational numbers, and floating-point numbers. It has a rich set of functions with a regular interface. A major new release, version 2, came out in Spring ’96. Compared to previous versions, it is much faster, contains lots of new functions, & has support for arbitrary precision floating-point numbers.

• GN (SrcCD) GN is a gopher/HTTP server.

• Gnans (SrcCD) Gnans is a program (and language) for the numerical study of deterministic and stochastic dynamical systems. The dynamical systems may evolve in continuous or discrete time. Gnans has graphical & command line interfaces.

• GNAT: The GNU Ada Translator (SrcCD) GNAT, a front end for the entire Ada 95 language, including all special needs annexes, is available via anonymous FTP from cs.nyu.edu and various mirror sites in ‘/pub/gnat’. SGI, DEC, and Siemens Nixdorf have chosen GNU Ada 95 as the Ada compiler for some of their systems. GNAT is maintained by Ada Core Technologies. For more information, see

‘http://www.gnat.com’.

• GNATS (SrcCD) GNATS, GNats: A Tracking System, is a bug-tracking system. It is based upon the paradigm of a central site or organization which receives problem reports and negotiates their resolution by electronic mail. Although it has been used primarily as a software bug-tracking system so far, it is sufficiently generalized that it could be used for handling system administration issues, project management, or any number of other applications.

• GnuGo (SrcCD) GnuGo plays the game of Go. It is not yet very sophisticated.

• GNUMATH (gnussl) (SrcCD) GNUMATH is a library (gnussl) that simplifies scientific programming in C & C++. Its focus is on problems that can be solved by a straight-forward application of numerical linear algebra. It also handles plotting. It is in beta release; it is expected to grow more versatile & offer a wider scope in time.

• gnuplot (SrcCD) gnuplot is an interactive program for plotting mathematical expressions and data. It plots both curves (2 dimensions) & surfaces (3 dimensions). It was neither written nor named for the GNU Project; the name is a coincidence. Various GNU programs use gnuplot.

• gnuserv (SrcCD) gnuserv is an enhanced version of Emacs’ emacsclient program. It lets the user direct a running Emacs to edit files or evaluate arbitrary Emacs Lisp constructs from another process.

• gpc (SrcCD) The GNU Pascal Compiler (GPC) is part of the GNU compiler family, GNU CC or GCC. It combines a Pascal front end with the proven GNU compiler backend for code generation and optimization. Unlike utilities such as p2c, this is a true compiler, not just a converter. Version 2.0 of GPC corresponds to GCC version 2.7.2.1. The purpose of the GNU Pascal project is to produce a compiler which:

• combines the clarity of Pascal with powerful tools suitable for real-life programming,

• supports both the Pascal standard and the Extended Pascal standard as defined by ISO, ANSI and IEEE. (ISO 7185:1990, ISO/IEC 10206:1991, ANSI/IEEE 770X3.160-1989)

• supports other Pascal standards (UCSD Pascal, Borland Pascal, Pascal-SC) in so far as this serves the goal of clarity and usability,

• can generate code for and run on any computer for which the GNU C Compiler can generate code and run on.

The current release (2.0) implements Standard Pascal (ISO 7185, level 0) and a large subset of Extended Pascal (ISO 10206) and Borland Pascal. The upcoming release 2.1 features better conformance to the various Pascal standards, and of course bug fixes.

GNU Pascal sources are on ‘ftp://kampi.hut.fi/jtv/gnu-pascal/’
(release) or ‘ftp://agnes.dida.physik.uni-essen.de/pub/gnu-pascal/’

(development versions).

• grep (SrcCD) This package has GNU grep, egrep, and fgrep, which find lines that match entered patterns. They are much faster than the traditional Unix versions.

• Groff (SrcCD) Groff is a document formatting system based on a device-independent version of troff, & includes:

eqn, nroff, pic, refer, tbl, troff;

the man, ms, & mm macros; & drivers for Postscript, TEX dvi format, the LaserJet 4 series of printers, and typewriter-like devices. Groff’s mm macro package is almost compatible with the DWB mm macros with several extensions. Also included is a modified version of the Berkeley me macros and an enhanced version of the X11 xditview previewer. Written in C++, these programs can be compiled with GNU C++ Version 2.7.2 or later. Groff users are encouraged to contribute enhancements. Most needed are complete Texinfo documentation, a grap emulation (a pic preprocessor for typesetting graphs), a page-makeup postprocessor similar to pm (see Computing Systems, Vol. 2, No. 2; ask office@usenix.org how to get a copy), and an ASCII output class for pic to integrate pic with Texinfo. Questions and bug reports from users who have read the documentation provided with Groff can be sent to bug-groff@gnu.org.

• guavac (SrcCD) guavac is a free compiler for the Java language.

• GTK GTK is the GNU GUI toolkit; it can be used from C and other compiled programming languages, and also from GUILE.

• GUILE Also see GNUs Flashes, page 10 (SrcCD) GUILE is GNU’s Ubiquitous Intelligent Language for Extension, an interpreter for the Scheme programming language, packaged as a library that you can link into your programs to make them extensible.

• gzip (BinCD, SrcCD) gzip can expand LZW-compressed files but uses another, unpatented algorithm for compression which generally produces better results. It also expands files compressed with System V’s pack program.

• hello (SrcCD) The GNU hello program produces a familiar, friendly greeting. It allows non-programmers to use a classic computer science tool which would otherwise be unavailable to them. Because it is protected by the GNU General Public License, users are free to share and change it. hello is also a good example of a program that meets the GNU coding standards. Like any truly useful program, hello contains a built-in mail reader.

• hp2xx (SrcCD) GNU hp2xx reads HP-GL files, decomposes all drawing commands into elementary vectors, and converts them into a variety of vector and raster output formats. It is also an HP-GL previewer. Currently supported vector formats include encapsulated Postscript, Uniplex RGIP, Metafont, various special TEX-related formats, and simplified HP-GL (line drawing only) for imports. Raster formats supported include IMG, PBM, PCX, & HP-PCL (including Deskjet & DJ5xxC support). Previewers work under X11 (Unix), OS/2 (PM & full screen), & MS-DOS (SVGA, VGA, & HGC).

• HylaFAX  Also see ‘http://www.vix.com/hylafax/’ (SrcCD)

HylaFAX (once named FlexFAX) is a facsimile system for Unix systems. It supports sending, receiving, & polled retrieval of facsimile, as well as transparent shared data use of the modem.

• Hyperbole (SrcCD) Hyperbole, written by Bob Weiner in Emacs Lisp, is an open, efficient, programmable information management, autonumbered outliner, & hypertext system, intended for everyday work on any platform Emacs runs on.

• ID Utils (SrcCD) ID Utils is a package of simple, fast, high-capacity, language-independent tools that index program identifiers, literal numbers, or words of humanreadable text. Queries can be issued from the command-line, or from within Emacs, serving as an augmented tags facility.

• ILISP (SrcCD) ILISP is a powerful GNU Emacs interface to many dialects of Lisp, including GCL, KCL, AKCL, ECL, IBCL, Lucid, Allegro, Harlequin and CMUCL. Some Scheme implementations are supported also.

• indent (SrcCD) GNU indent formats C source code into the GNU, BSD, K&R, or your own special indentation style. GNU indent is more robust & provides more functionality than other such programs, including handling C++ comments. It runs on Unix, Windows, VMS, ATARI and other systems. The next version which formats C++ source code will soon be released.

• Inetutils (SrcCD) Inetutils has common networking utilities & servers. Version 1.3a is more portable than previous releases: Inetutils now works on GNU/Linux and SunOS/Solaris systems, although it still requires a system with some degree of BSD compatibility. This release also has many security holes plugged.

• Ispell (SrcCD) Ispell is an interactive spell checker that suggests “near misses” to replace unrecognized words. System & user-maintained dictionaries for multiple languages can be used. Standalone & Emacs interfaces are available.

• JACAL Not available from the FSF except by FTP JACAL is a symbolic mathematics system for the manipulation & simplification of algebraic expressions & equations. The FSF is not distributing JACAL on any physical media. You can FTP it,

or visit the Web site ‘http://www-swiss.ai.mit.edu/~jaffer/JACAL.html’.

• jargon (SrcCD) The jargon file is the online version of The New Hacker’s Dictionary.

• Karma (SrcCD) Karma is a signal and image processing library and visualization toolkit that provides interprocess communications, authentication, graphics display, and user interface to and manipulation of the Karma network data structure. Several foreign data formats are also supported. Karma comes packaged with a number of generic visualization tools and some astronomy-specific tools.

• less (SrcCD) less is a display paginator similar to more and pg, but with various features (such as the ability to scroll backwards) that most pagers lack.

• LessTif (SrcCD) LessTif is a free clone of Motif.

• libg++ (Old C++ Library) (BinCD, SrcCD) The package was once main GNU C++ support library. More recently, it contained the libstc++ library which provided the support for the forthcoming C++ standard, but libstc++ is now a separate package (see below). libg++ now contains only the old routines, supported for backwards compatibility; new programs should avoid using it.

• libstdc++ (BinCD, SrcCD) This library implements the library facilities defined by the forthcoming ISO C++ standard; it was formerly part of libg++. This includes strings, iostream, and various container classes. All of this is templatized. The package also contains the older libg++ library for backward compatibility, but new programs should avoid using it.

• Libtool (SrcCD) GNU libtool is a generic library support script which manages the complexity of building and linking against shared libraries. Libtool allows source code package maintainers to easily add shared library support without breaking static-only platform compatibility. Libtool supports building static libraries on all known platforms. Shared library support has been implemented for several platforms.

• Lout (SrcCD) Lout is a text formatter, approximately as powerful as TeX but with a cleaner programming language.

• Lynx  Also see ‘http://lynx.browser.org’ (SrcCD)

Lynx is a World Wide Web browser for those running “cursor-addressable” (text-only) terminals or terminal emulators. Lynx has been ported to text-based PC platforms such as DOS.

• m4 (SrcCD) GNU m4 is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible, although it has some extensions (e.g., handling more than 9 positional parameters to macros). m4 also has built-in functions for including files, running shell commands, doing arithmetic, etc.

• make (BinCD, SrcCD) [FSFman] GNU make supports POSIX 1003.2 and has all but a few obscure features of the BSD and System V versions of make, and runs on MS-DOS, AmigaDOS, VMS, & Windows NT or 95, as well as all Unix-compatible systems. GNU extensions include long options, parallel compilation, flexible implicit pattern rules, conditional execution, & powerful text manipulation functions. Source for the Make Manual comes with the program (see Documentation, page 44).

• MandelSpawn (SrcCD) A parallel Mandelbrot generation program for the X Window System.

• Maxima (SrcCD) Maxima is a Common Lisp implementation of MIT’s Macsyma system for computer based algebra.

• MCSim (SrcCD) MCSim v4.2.0 is a general purpose modeling and simulation program. It provides numerical solution to sets of nonlinear (or linear) algebraic equations or ordinary differential equations. It also performs standard or Markov chain Monte Carlo simulations for Bayesian statistical inference.

• Mesa (SrcCD) Mesa is a 3-D graphics library with an API which is very similar to that of OpenGL.

• Meta-HTML (SrcCD) <Meta-HTML> is a programming language specifically designed for working within the World Wide Web environment. It works by interpreting and executing an extended version of standard HTML on the server. With mSQL, mySQL, and other database access, statefull sessions and more, it provides the most commonly wanted Web functionality as built-in primitives, so you don’t have to write them.

• Midnight Commander (mc) (SrcCD) The Midnight Commander is a user friendly & colorful file manager & shell, useful to novice & guru alike. It has a built-in virtual file system that manipulates files inside tar files or files on remote machines using the FTP protocol. This mechanism is extendable with external programs, and is the basis for the GNOME file manager.

• Miscellaneous Files Distribution (SrcCD) The GNU Miscellaneous Files are non-crucial files that are common on various systems, including word lists, airport codes, ZIP codes, etc.

• mkisofs (SrcCD) mkisofs is a pre-mastering program to generate an ISO 9660 file system. It takes a snapshot of a directory tree, and makes a binary image which corresponds to an ISO 9660 file system when written to a block device. It can also generate the System Use Sharing Protocol records of the Rock Ridge Interchange Protocol (used to further describe the files in an ISO 9660 file system to a Unix host; it provides information such as longer filenames, uid/gid, permissions, and device nodes). The mkisofs program is often used with cdwrite. The cdwrite program works by taking the image that mkisofs generates and driving a cdwriter drive to actually burn the disk. cdwrite works under GNU/Linux, and supports popular cdwriter drives. Older versions of cdwrite were included with older versions of mkisofs; sunsite.unc.edu has the latest version:

‘/pub/Linux/utils/disk-management/cdwrite-2.0.tar.gz’.

• mtools (SrcCD) mtools is a collection of utilities to access MS-DOS disks from Unix without mounting them. It supports Windows 95 style long file names, FAT32, OS/2 Xdf disks, 2m disks (store up to 1992k on a high density 3 1/2 disk), and ZIP/JAZ disks.

• MULE (SrcCD) MULE is a MULtilingual Enhancement to GNU Emacs. MULE text buffers can contain a mix of characters from many languages including: Japanese, Chinese, Korean, Vietnamese, Thai, modern European languages (including Greek & Russian), Arabic, & Hebrew. MULE also provides input methods for all of them. See GNU & Other Free Software in Japan, page 11, for more information about MULE. Emacs 20 includes most of the MULE features except for right-to-left writing, interface to external Japanese/Chinese conversion server programs, and terminal faces. These missing features will be included in Emacs soon.

• mutt  Also see ‘http://www.cs.hmc.edu/~me/mutt’ (SrcCD)

Mutt is a small but very powerful screen-oriented mail client, with support for MIME, message threading, color terms, and configurable key binding.

• Nana (SrcCD) Nana is a debugging-support library; it provides improved support for assertion checking and logging, for programs written in C, C++ and Ada.

• ncurses (SrcCD) ncurses implements the Unix curses API for developing screen-based programs that are terminal independent. It is not merely an emulation of old (BSD) curses/termcap, but is fully compatible with SVR4 curses/terminfo. It includes color, multiple-highlight, & xterm mouse-event support.

• NetHack (SrcCD) NetHack is a display-oriented adventure game similar to Rogue. ASCII, X11, and various PC based GUI displays are supported. NetHack runs on GNU/Linux, Amiga, Atari, BeBox, Mac, MS Windows, MS-DOS, OS/2, Unix, VMS, and Windows NT. The current release of NetHack is 3.2.2. Bug reports concerning NetHack

should be sent to nethack-bugs@linc.cis.upenn.edu.

• NIH Class Library (SrcCD) The NIH Class Library is a set of C++ classes (similar to Smalltalk-80’s) written in C++ by Keith Gorlen of the National Institutes of Health (NIH).

• nvi (SrcCD) nvi is an implementation of the ex/vi Unix editor. It has all the functionality of the original ex/vi, except open mode & the lisp edit option. Enhancements include multiple buffers, command-line editing & path completion, integrated Perl5 & Tcl scripting languages, Cscope support & tag stacks, 8-bit data support, infinite file/line lengths, infinite undo, language catalogs, incremental search, extended regular expressions, and security fixes. It uses Autoconf for configuration and runs on any Unix-like system.

• Oaklisp (SrcCD) Oaklisp is a fast, portable, object-oriented Scheme with first class types.

• Objective-C Library (SrcCD)

Our Objective-C Class Library (gstep-base.tar.gz, libgnustep-base)

has general-purpose, non-graphical Objective-C objects written by Andrew McCallum & others. It includes collection classes for maintaining groups of objects, I/O streams, coders for formatting objects & C types to streams, ports for network packet transmission, distributed objects (remote object messaging), string classes, invocations, notifications, event loops, timers, exceptions, pseudo-random number generators, & more. It has the base classes for the GNUstep project; all but a few of them have already been written. Send queries & bugs to mccallum@gnu.org. See “GNUstep” in Forthcoming GNUs, page 13.

• OBST (SrcCD) OBST is a persistent object management system with bindings to C++. OBST supports incremental loading of methods. Its graphical tools require the X Window System. It features a hands-on tutorial including sample programs. It compiles with G++, and should install easily on most Unix platforms.

• Octave (SrcCD) Octave does arithmetic for real and complex scalars and matrices, solves sets of nonlinear algebraic equations, integrates systems of ordinary differential & differential-algebraic equations, and integrates functions over finite & infinite intervals. Two- & three-dimensional plotting is available using gnuplot.

Version 2.0.9 includes support for dynamically linked functions, user-defined data types, many new functions, & a completely revised manual. Octave works on most GNU and Unix systems, OS/2, and Windows NT/95.

• Oleo Also see Forthcoming GNUs, page 13 (SrcCD) Oleo is a spreadsheet program (better for you than the more expensive spreadsheets). It supports the X Window System and character-based terminals, and can output Embedded Postscript renditions of spreadsheets. Keybindings should be familiar to Emacs users and are configurable. Oleo supports multiple variable-width fonts when used under the X Window System or outputting to Postscript devices.

• p2c (SrcCD) p2c is Dave Gillespie’s Pascal-to-C translator. It inputs many dialects (HP, ISO, Turbo, VAX, etc.) & generates readable, maintainable, portable C.

• patch (SrcCD) patch applies diff’s output to a set of original files to generate the modified versions. Recent versions of GNU patch can update files’ timestamps as well as their contents.

• PCL (SrcCD) PCL is a free implementation of a large subset of CLOS, the Common Lisp Object System. It runs under both GCL and CLISP, mentioned above.

• perl (SrcCD) Larry Wall’s perl combines the features & capabilities of C, sed, awk, & sh, and provides interfaces to the Unix system calls & many C library routines.

• PIPS (SrcCD) PIPS is the Parallel Information Processing System. It includes programs to convert data between the portable map image format (PNM) and the network common data format (NetCDF), and to perform several operations on NetCDF files in parallel.

• plotutils (SrcCD) The GNU plotutils (plotting utilities) package includes libplot, a subroutine library for producing 2-D device-independent vector graphics, and graph, a sample application for plotting 2-D scientific data that is built on top of libplot. Supported devices include X Window System displays, Postscript devices, HP-GL/2 and HP-GL printers and plotters, and Tektronix emulators. xfig output format, which can be edited with the free graphics editor xfig, is also supported. The Postscript output format includes directives which allow it to be edited with the idraw graphics editor. Included with graph are spline, a program that uses splines in tension to interpolate data, and ode, an application that will numerically integrate a system of ordinary differential equations.

• PRCS (SrcCD) PRCS, the Project Revision Control System, is a version control program with purpose similar to that of CVS. It was designed with simplicity in mind. Like CVS, PRCS uses RCS to accomplish this task, but this is inconsequential to the user, as RCS is completely hidden beneath a layer of abstraction.

• ptx (SrcCD) GNU ptx is our version of the traditional permuted index generator. It handles multiple input files at once, has TEX compatible output, & outputs readable KWIC (KeyWords In Context) indexes without using nroff. Plans are to merge this package into textutils. It does not yet handle input files that do not fit in memory all at once.

• rc (SrcCD) rc is a shell that features a C-like syntax (much more so than csh) and far cleaner quoting rules than the C or Bourne shells. It’s intended to be used interactively, but is also great for writing scripts. It inspired the shell es.

• RCS (SrcCD) RCS, the Revision Control System, is used for version control & management of software projects. Used with GNU diff, RCS can handle binary files (8-bit data, executables, object files, etc). RCS now conforms to GNU configuration standards & to POSIX 1003.1b-1993. Also see the CVS item above.

• readline (BinCD, SrcCD) Brian Fox wrote the readline library one weekend in 1987, so that the FSF would have a clean Emacs-like line editing facility that could be used across multiple programs. After installing it in Bash, he went on to test the reusability of the code by adding it to GDB, and then later, to the GNU FTP client. The library supplies many entry points—the simplest interface gives any program the ability to store a history of input lines, and gives the end user a complete Emacs-like (or vi-like) editing capability over the input, simply by replacing calls to gets with calls to readline.

• recode (SrcCD) GNU recode converts files between character sets and usages. When exact transliterations are not possible, it may delete the offending characters or fall back on approximations. This program recognizes or outputs nearly 150 different character sets and is able to transliterate files between almost any pair. Most RFC 1345 character sets are supported.

• regex (SrcCD) The GNU regular expression library supports POSIX.2, except for internationalization features. It is included in many GNU programs which do regular expression matching & is available separately. An alternate regular expression package, rx, is faster than regex in many cases; we were planning to replace regex with rx, but it is not certain this will happen.

• Roxen (SrcCD) Roxen is a modularized, object-oriented, non-forking World Wide Web server with high performance and throughput, and capabilities for on the fly image generation (‘http://www.roxen.com’). It was formerly named Spinner, but was renamed for trademark reasons.

• rsync (SrcCD) rsync is a replacement for rcp that has many more features. rsync uses the “rsync algorithm”, which provides a very fast method for synchronizing large remote files, sending only the differences across the link. It does not require both versions of a file to be local in order to compute the differences. A technical report describing the rsync algorithm is included with the package.

• rx (SrcCD) Tom Lord has written rx, a regular expression library which is generally faster and more correct than the older GNU regex library.

• SAOimage (SrcCD) SAOimage is an X-based astronomical image viewer. It reads array data images, which may be in specific formats, and displays them with a pseudocolor colormap. There is full interactive control of the colormap, panning and zooming, graphical annotation, and cursor tracking in pixel and sky coordinates,

among other features.

• screen (SrcCD) screen is a terminal multiplexer that runs several separate “screens” (ttys) on a single character-based terminal. Each virtual terminal emulates a DEC VT100 plus several ISO 2022 and ISO 6429 (ECMA 48, ANSI X3.64) functions, including color. Arbitrary keyboard input translation is also supported. screen sessions can be detached and resumed later on a different terminal type. Output in detached sessions is saved for later viewing.

• sed (SrcCD) sed is a stream-oriented version of ed. It comes with the rx library.

• Sharutils (SrcCD) shar makes so-called shell archives out of many files, preparing them for transmission by electronic mail services; unshar helps unpack these shell archives after reception. uuencode and uudecode are POSIX compliant implementations of a pair of programs which transform files into a format that can be safely transmitted across a 7-bit ASCII link.

• Shellutils (SrcCD)

The Shellutils are: basename, chroot, date, dirname, echo, env, expr,
factor, false, groups, hostname, id, logname, nice, nohup, pathchk,
printenv, printf, pwd, seq, sleep, stty, su, tee, test, true, tty, uname,
uptime, users, who, whoami, & yes.

• Shogi (SrcCD) Shogi is a Japanese game similar to Chess; a major difference is that captured pieces can be returned into play. GNU Shogi is a variant of GNU Chess; it implements the same features & similar heuristics. As a new feature, sequences of partial board patterns can be introduced to help the program play toward specific opening patterns. It has both character and X display interfaces. It is primarily supported by Matthias Mutz on behalf of the FSF.

• SIPP (SrcCD) SIPP is a library for photorealistically rendering 3D scenes. Scenes can be illuminated by an arbitrary number of light sources; they are built up of object hierarchies, with arbitrarily many subobjects and subsurfaces. Surfaces can be rendered with either Phong, Gouraud, or flat shading. The library supports programmable shaders and texture mapping.

• Smail (SrcCD) Smail is a mail transport system, designed as a compatible drop-in replacement for sendmail. It uses a much simpler configuration format than sendmail and is designed to be setup with minimal effort. Current beta versions of smail which have enhanced security and anti-spam features are

available from ‘ftp://ftp.planix.com/pub/Smail/’.

• Smalltalk (SrcCD) GNU Smalltalk is an interpreted object-oriented programming language system written in highly portable C. It has been ported to MS-DOS, many Unixes, & other OSes. Features include a binary image save capability, the ability to call user-written C code with parameters, an Emacs editing mode, a version of the X protocol invocable from Smalltalk, optional byte-code compilation and/or execution tracing, & automatically loaded per-user initialization files. It implements all of the classes & protocol in the book “Smalltalk-80: The Language”, except for the graphic user interface (GUI) related classes.

• SNePS (SrcCD) SNePS is the Semantic Network Processing System. It is an implementation of a fully intensional theory of propositional knowledge representation and reasoning. SNePS runs under CLISP or GCL.

• spell (SrcCD) GNU spell is a clone of standard Unix spell, implemented as a wrapper to

ispell.

• stow (SrcCD) stow manages the installation of multiple software packages, keeping them separate while making them appear (via symbolic links) to be installed in the same place. For example, Emacs can be installed in

‘/usr/local/stow/emacs’ and Perl in ‘/usr/local/stow/perl’, permitting

each to be administered separately, while with stow they will both appear to be installed in ‘/usr/local’.

• Superopt (SrcCD) Superopt is a function sequence generator that uses an exhaustive generateand-test approach to find the shortest instruction sequence for a given function. You provide a function as input, a CPU to generate code for, and how many instructions you want. Its use in GCC is described in the ACM SIGPLAN PLDI’92 Proceedings. It supports: SPARC, m68k, m68020, m88k, IBM POWER and PowerPC, AMD 29k, Intel x86 & 960, Pyramid, DEC Alpha, Hitachi SH, & HP–PA.

• Swarm (SrcCD) Swarm is a software package for multi-agent simulation of complex systems being developed at The Santa Fe Institute. Swarm is intended to be a useful tool for researchers in a variety of disciplines, especially artificial life. The basic architecture of Swarm is the simulation of collections of concurrently interacting agents: with this architecture, a large variety of agent based models can be implemented.

• tar (BinCD, SrcCD) GNU tar includes multi-volume support, the ability to archive sparse files, compression/decompression, remote archives, and special features that allow tar to be used for incremental and full backups. GNU tar uses an early draft of the POSIX 1003.1 ustar format which is different from the final version. This will be corrected in the future.

• Termcap Library (SrcCD) [FSFman] The GNU Termcap library is a drop-in replacement for ‘libtermcap.a’ on any system. It does not place an arbitrary limit on the size of Termcap entries, unlike most other Termcap libraries. Included is source for the Termcap Manual in Texinfo format (see Documentation, page 44).

• Termutils (SrcCD) The Termutils package contains programs for controlling terminals. tput is a portable way for shell scripts to use special terminal capabilities. tabs is a program to set hardware terminal tab settings.

• TEX (SrcCD) TEX is a document formatter that is used, among other things, by the FSF for all its printed documentation. You will need it if you want to make printed

manuals. See ‘http://www.tug.org/web2c/’.

The Source Code CD-ROM contains a minimal TEX collection, sufficient to process Texinfo files. We hope to provide a full TEX distribution in the future.

• Texinfo (SrcCD) [FSFman] Texinfo is a set of utilities

(makeinfo, info, install-info, texi2dvi, texindex, & texinfmt.el)

which generate printed manuals, plain ASCII text, & online hypertext documentation (called “Info”), & can read online Info documents; Info files can also be read in Emacs. Texinfo mode for Emacs enables easy editing & updating of Texinfo files. Source for the Texinfo Manual is included (see Documentation, page 44).

• Textutils (SrcCD) The Textutils programs manipulate textual data. They include: cat, cksum,

comm, csplit, cut, expand, fmt, fold, head, join, md5sum, nl, od, paste,
pr, sort, split, sum, tac, tail, tr, unexpand, uniq, and wc.

• TIFF library (SrcCD) The TIFF library, libtiff, is a library for manipulating Tagged Image File Format files, a commonly used bitmap graphics format.

• Tile Forth (SrcCD) Tile Forth is a 32-bit implementation of the Forth–83 standard written in C, allowing it to be easily ported to new systems & extended with any C-function (graphics, windowing, etc). Many documented Forth libraries are available, e.g. top-down parsing, multi-threads, & object-oriented programming.

• time (SrcCD) time reports (usually from a shell) the user, system, & real time used by a process. On some systems it also reports memory usage, page faults, etc.

• ucblogo (SrcCD) ucblogo implements the classic teaching language, Logo.

• units

GNU ‘units’ converts between different units of measurement, such as miles/gallon to km/liter. (It can only handle multiplicative scale changes, so it cannot convert Celsius to Fahrenheit though it could convert temperature differences between those temperatures scales.)

• UUCP (SrcCD) GNU’s UUCP system (written by Ian Lance Taylor) supports the f, g (all window & packet sizes),

v,
G,
t,
e,

Zmodem, & two new bidirectional (i & j) protocols. With a BSD sockets library, it can make TCP connections. With TLI libraries, it can make TLI connections. Source is included for a manual (not yet published by the FSF).

• vera (SrcCD) VERA (Virtual Entity of Relevant Acronyms) is a document listing thousands of acronyms of the computer field. Updated tri-monthly.

• viewfax (SrcCD) Viewfax is a tool for displaying fax files on an X display. It can display raw, digifax or tiff/f files, such as those received by HylaFAX.

• VRweb (SrcCD) VRweb is a browser for 3D worlds and scenes modeled in VRML (the Virtual Reality Modeling Language), developed by Graz University of Technology, in Austria.

• Emacs/W3 (SrcCD) Emacs/W3 (written by William Perry in Emacs Lisp) is an extensible, advanced World Wide Web browser that runs as part of Emacs. It includes support for frames, tables, stylesheets, and much more. See

‘http://www.cs.indiana.edu/elisp/w3/docs.html’.

• wdiff (SrcCD) wdiff is a front-end to GNU diff. It compares two files, finding the words deleted or added to the first to make the second. It has many output formats and works well with terminals and pagers. wdiff is very useful when two texts differ only by a few words and paragraphs have been refilled. Plans are to merge this package into diffutils.

• Wget (SrcCD) Wget non-interactively retrieves files from the Web using HTTP & FTP. It is suitable for use in shell scripts.

• windows32api  (SrcCD)

windows32 is a set of header files & import libraries that can be used by GNU tools for compiling & linking programs to be run on Windows NT/95.

• WN (SrcCD) WN is a World Wide Web server designed to be secure and flexible. It offers many different capabilities in pre-parsing files before passing them to the client, and has a very different design from Apache and the NCSA server.

• X11 (SrcCD) We distribute Version 11, Release 6.3 of the X Window System with the latest patches & bug fixes. X11 includes all of the core software, documentation, contributed clients, libraries, & toolkits, games, etc. While supplies last, we will distribute X11R5 on the November 1993 and earlier Source Code CD-ROMs.

• xboard (SrcCD) xboard is a graphical chessboard for X Windows. It can serve as a user interface to the Crafty or GNU chess programs, the Internet Chess Servers, Email correspondence chess, or games saved in Portable Game Notation.

• xgrabsc (SrcCD) xgrabsc is a screen capture program similar to xwd but with a graphical user interface, more ways of selecting the part of the screen to capture, & different types of output: Postscript, color Postscript, xwd, bitmap, pixmap, & puzzle.

• xinfo (SrcCD) xinfo is an X-windows program for reading Info files. It uses a special widget, which is available for use in other programs.

• xmcd  Also see ‘http://sunsite.unc.edu/~cddb/xmcd/’ (SrcCD)

xmcd is an X11-based CD player utility and cda is a command-line driven, non-graphical CD audio player. xmcd is developed to use the OSF/Motif API (version 1.1 and later) and can also be used with LessTif, the free Motif clone. In its evolution over the past few years, xmcd has established itself as the premier CD player application for the X window system with an attractive, easy-to-use user interface. It is feature-rich and runs on virtually all of the popular Unix and OpenVMS platforms. It also supports the widest array of CD-ROM and CD-R devices, including some older SCSI-1 drives that do not work with other CD player applications. The remote CD database query feature fully utilizes the Internet and taps on a vast repository of CD artists/titles, track titles and other information. Multi-disc changers are also supported. Like many other CD player applications, xmcd supports a CD database of disc and track titles and other information. A distinguishing feature of xmcd is the ability to connect to a remote CD database server to query this information. Many public Internet CD database servers have been established around the world for this purpose, and xmcd also allows the user to submit new CD entries to the master database.

• xshogi (SrcCD) xshogi is a graphical Shogi (Japanese Chess) board for the X Window System. It can serve as a user interface to GNU Shogi, as a referee for games between two humans, or as a client for the Internet Shogi Server.

• Ygl (SrcCD) Ygl emulates a subset of SGI’s GL (Graphics Language) library under X11 on most platforms with an ANSI C compiler (including GCC). It has most two-dimensional graphics routines, the queue device & query routines, double buffering, RGB mode with dithering, Fortran bindings, etc.

• zlibc (SrcCD) Zlibc is an uncompressing C library for GNU/Linux, Solaris, SunOS systems. It is a preloadable shared object that allows executables to uncompress the datafiles that they need on the fly. No kernel patch, no recompilation of these executables and no recompilation of the libraries is needed; the package overrides the open function (and other system call functions) in the shared library.

The Deluxe Distribution

The Free Software Foundation has been asked repeatedly to create a package that provides executables for all of our software. Normally we offer only sources. The Deluxe Distribution provides binaries with the source code and includes six T-shirts, all our CD-ROMs, printed manuals, & reference cards.

The FSF Deluxe Distribution contains the binaries and sources to hundreds of different programs including Emacs, the GNU C/C++ Compiler, the GNU Debugger, the complete X Window System, and all the GNU utilities.

We will make a Deluxe Distribution for most machines/operating systems. We may be able to send someone to your office to do the compilation, if we can’t find a suitable machine here. However, we can only compile the programs that already support your chosen machine/system—porting is a separate matter. (To commission a port, see the GNU Service Directory; details in Free Software Support, page 15.) Compiling all these programs takes time; a Deluxe Distribution for an unusual machine will take longer to produce than one for a common machine. Please contact the FSF Office with any questions.

We supply the software on a write-once CD-ROM (in ISO 9660 format with “Rock Ridge” extensions), or on one of these tapes in Unix tar format: 1600 or 6250 bpi 1/2 in reel, Sun DC300XLP 1/4 in cartridge – QIC24,

IBM RS/6000 1/4 in c.t. – QIC 150, Exabyte 8 mm c.t., or DAT 4 mm c.t. If your computer cannot read any of these, please contact us to see if we can handle your format.

The printed documentation includes one each of Bison, Calc, Gawk, GCC, GNU C Library, GDB, Flex, GNU Emacs Lisp Reference, Programming in Emacs Lisp: An Introduction, Make, Texinfo, & Termcap manuals, six copies of the GNU Emacs manual, and ten reference cards for each of Emacs, Bison, Calc, Flex, & GDB.

Every Deluxe Distribution also includes the latest editions of our CD-ROMs (immediately below),

which are in ISO 9660 format with Rock Ridge extensions.

The price of the Deluxe Distribution is $5000 (shipping included). These sales provide enormous financial assistance to help the FSF develop more free software. To order, please fill out the “Deluxe Distribution” section on the FSF Order Form in the centerfold and send it to:

Free Software Foundation, Inc. Phone: +1–617–542–5942 59 Temple Place – Suite 330 Fax (incl’g Japan): +1–617–542–2652 Boston, MA 02111–1307 Email: fsforder@gnu.org

   USA  Web: ‘http://www.gnu.org’

CD-ROMs

We offer the Source Code CD-ROMs, page 42 and Compiler Tools Binaries CD-ROM, page 42. Older versions of each are available at a reduced price (while supplies last).

Our CDs are in ISO 9660 format & can be mounted as a read-only file system on most computers. If your driver supports it, you can mount each CD with “Rock Ridge” extensions

& it will look like a regular Unix file system, rather than one full of truncated & otherwise mangled names that fit vanilla ISO 9660.

You can build most of the software without copying the sources off the CD. You only need enough disk space for object files and intermediate build targets.

Pricing of the GNU CD-ROMs

If a business or organization is ultimately paying, the March 1998 Source CD set costs $240; but if you, an individual, are paying out of your own pocket, the price is $60. The March 1998 Compiler Tools Binaries CD-ROM costs $220 for a business or organization; $55 for an individual. The MS-DOS/Windows book and CD-ROM costs $140 for a business or organization; $35 for an individual.

What Do the Different Prices Mean?

The software on our disks is free; anyone can copy it and anyone can run it. What we charge for is the physical disk and the service of distribution.

We charge two different prices depending on who is buying. When a company or other organization buys the March 1998 Source CD-ROMs, we charge $240. When an individual buys the same CD-ROMs, we charge just $60. This distinction is not a matter of who is allowed to use the software. In either case, once you have a copy, you can distribute as many copies as you wish and there’s no restriction on who can have or run them. The price distinction is entirely a matter of what kind of entity pays for the CDs.

You, the reader, are certainly an individual, not a company. If you are buying a disk “in person”, then you are probably doing so as an individual. But if you expect to be reimbursed by your employer, then the disk is really for the company; so please pay the company price and get reimbursed for it. We won’t try to check up on you—we use the honor system—so please cooperate.

Buying CDs at the company price is very helpful for GNU; just 150 Source CDs at that price support an FSF programmer or tech writer for a year.

Why Is There an Individual Price?

In the past, our distribution tapes were ordered mainly by companies. The CD at the price of $240 provides them with all of our software for a much lower price than they would previously have paid for six different tapes. To lower the price more would cut into the FSF’s funds very badly and decrease the software development we can do.

However, for individuals, $240 is

too high; hardly anyone could afford that. So we decided to make CDs available to individuals at the lower price of $60.

Is There a Maximum Price?

Our stated prices are minimum prices. Feel free to pay a higher price if you wish to support GNU development more. The sky’s the limit; we will accept as high a price as you can offer. Or simply give a donation (tax-deductible in the U.S.) to the Free Software Foundation, a tax-exempt public charity.

March 1998 Compiler Tools Binaries CD-ROM

We are releasing the fifth edition of our “Binaries” CD-ROM, which includes GNU compiler tools that run on several systems that are often distributed without a C compiler. (The source code is also included, of course.) Thus people who use those systems can compile GNU and other free software without buying a proprietary compiler. You can also use these GNU tools to compile your own programs written in C/C++/Objective-C (or Fortran). Older editions are available at a discount while supplies last; see the FSF Order Form, in the centerfold. The March 1998, 5th edition includes:

These packages: DJGPP Flex
Binutils  Emacs (MS-DOS only) GDB
Bison  GCC/G++/Objective-C libg++

Make

On these platforms: hppa1.1-hp-hpux9  powerpc-ibm-aix4.2
hppa1.1-hp-hpux10  sparc-sun-solaris2.4
alpha-dec-osf3.2  i386-pc-msdos  sparc-sun-solaris2.5
alpha-dec-osf4.0  i386-pc-solaris2.6  sparc-sun-sunos4.1

We hope to have more systems on each update of this CD. If you can help build binaries for new systems (especially those distributed without a C compiler), or have one to suggest, please contact us.

Source Code CD-ROMs

GNU Source CD-ROMs include no precompiled programs, so you will need a C compiler (programs that need some other interpreter or compiler normally provide the C source for a bootstrapping program). We ship C compiler binaries for some systems on the Compiler Tools Binaries CD-ROM, page 42.

Most editions of our GNU Source Code CD-ROMs are available, including:

• March 1998 Source Code CD-ROMs, page 43. The current 11th edition has bug fixes, improvements, and new releases included in no older edition.

• November 1993 Source CD-ROM. The 3d edition is the last with X11R5.

Editions 1–10 are available at a discount while supplies last. Each includes contemporary versions of GNU software, X Windows, and Texinfo source for the GNU manuals listed in Documentation, page 44. For some details see the FSF Order Form, in the centerfold.

March 1998 Source Code CD-ROMs

The 11th edition of our Source Code CD set (2 disks) is now available. It has these packages, & some manuals that are not part of packages. (Some versions may be newer than listed here.)

abuse 2.0  gcal 2.40  libobjects 0.1.19 Roxen 1.1
acct 6.3  GCC/G++/Objective-C 2.7.2.3  rsync 1.6.3
acm 4.8  GCC/G++/Objective-C 2.8.1  rx 1.5
aegis 3.0  GDB 4.16  libstdc++ 2.8.1  SAOimage 1.20
apache 1.2.4  gdbm 1.7.3  libtool 1.0  screen 3.7.4
Autoconf 2.12  Generic NQS 3.50.2  sed 2.05
Automake 1.2  geomview 1.6.1 lout 3.11  Sharutils 4.2
BASH 2.01.1  gettext 0.10  lynx 2.7.1  Shellutils 1.16
bc 1.04  gforth 0.3.0  m4 1.4  Shogi 1.2p03
Binutils 2.8.1  Ghostscript 3.33 make 3.76.1  SIPP 3.1
Bison 1.25  Ghostview 1.5  MandelSpawn 0.07
C Library 2.0.6 Ghostview for Windows 2.1  smail 3.2
Calc 2.02f  GIMP 0.99.20  maxima 5.2  Smalltalk 1.1.5
cfengine 1.4.10  GIT 4.3.16  mc 4.1  sneps 2.3.1
Chess 4.0.pl77  gmp 2.0.2  MCSim 4.2.0  spell 1.0
CLISP 1997.09.25 GN 2.24  mesa 2.1  stow 1.3.2
clx 5.02  Gnans 1.5.1  <Meta-HTML> 5.06
Common Lisp 2.2.2  miscfiles 1.1  Superopt 2.5
cook 2.0.1  gnat 3.09  mkisofs 1.11GNU swarm 1.0.3
cperf 2.1a  GNATS 3.2  mm 1.07  tar 1.12
cpio 2.4.2  GnuGo 1.2  mtools 3.8  Termcap 1.3
CVS 1.9  gnuplot 3.5  MULE 2.3  Termutils 2.0
cxref 1.4  gnuserv 2.1alpha mutt 0.85e  TeX 3.1415
ddd 2.1.1  gnussl 0.2.1  nana 1.13  Texinfo 3.12
DejaGnu 1.3  gpc 2.0  ncurses 4.2  Textutils 1.22
Diffutils 2.7  grep 2.1  NetHack 3.2.2  tiff 3.4
dld 3.3  Groff 1.11  NIHCL 3.1.4  Tile Forth 2.1
doschk 1.1  GTK 0.99.5  nvi 1.79  time 1.7
ed 0.2  guavac 0.3.1  Oaklisp 930720 ucblogo 4.2
Elib 1.0  guile 1.2  OBST 3.4.3  units 1.54
elisp archive 1998.03.12  Octave 2.0.11  UUCP 1.06.1
Emacs 18.59  gzip 1.2.4  Oleo 1.6  vera 1.2
Emacs 19.34  hello 1.3  p2c 1.20  vrweb 1.5
Emacs 20.2  hp2xx 3.1.4  patch 2.5  W3 2.2.26
enscript 1.5.0  HylaFAX 4.0pl1 pcl-gcl 2.2  wdiff 0.5
es 0.84  Hyperbole 4.01 perl 4.036  wget 1.4.5
Exim 1.73  ID Utils 3.2  perl 5.004.04  windows32api 0.1.2
f2c 1997.11.09  ilisp 5.8.a04  pips 1.01  WN 1.19.0
ffcall 1.3  indent 1.9.1  plotutils 2.0  X11R6.3
Fileutils 3.16  Inetutils 1.3.1  prcs 1.2.0  xboard 3.6.2

Findutils 4.1  Ispell 3.1.20  ptx 0.4  xgrabsc 2.41
Finger 1.37  jargon 4.0.0  rc 1.4  xinfo 1.01.01
flex 2.5.4  karma 1.6  RCS 5.7  xmcd 2.2
Fontutils 0.6  less 332  readline 2.1  xshogi 1.2p03
g77 0.5.21  LessTif 0.81  recode 3.4  Ygl 3.1
gawk 3.0.3  libg++ 2.8.1  regex 0.12  zlibc 0.9e

GNU Emacs Lisp Reference Manual, Ed. 1.03 for Version 18

GNU Emacs Lisp Reference Manual, Ed. 2.4.2 for Version 19 GNU Emacs Lisp Reference Manual, Japanese Ed. 2.4.2 for Version 19 Programming in Emacs Lisp, an Introduction 1.05

CD-ROM Subscription Service

Our subscription service enables you to stay current with the latest GNU developments. For a one-time cost equivalent to three editions, we will send you four successive editions of either the Source Code CD-ROMs, page 42 or Compiler Tools Binaries CD-ROM, page 42. Each new edition will be shipped when available; our target is four Source editions per year and two Binaries (see “New Schedule” in GNUs Flashes, page 10).

(Subscribers outside contiguous USA and Canada must pay shipping cost for four editions. For details, see the FSF Order Form in the centerfold.)

GNU Documentation

GNU is dedicated to providing quality, easy-to-use online & printed documentation. GNU manuals are intended to explain underlying concepts, describe how to use all the features of each program, & give examples of command use. GNU manuals are distributed as Texinfo source files, which yield both typeset hardcopy via the TEX document formatting system and online hypertext display via the menu-driven Info system. Source for each manual comes with the software; here are those that we publish as printed books. See the FSF Order Form in the centerfold to order them.

Most GNU manuals are bound as soft cover books with lay-flat bindings. This allows you to open them so they lie flat on a table without creasing the binding. They have an inner cloth spine and an outer cardboard cover that will not break or crease as an ordinary paperback will. Manuals currently in lay-flat binding are: Using and Porting GNU CC, GDB, Emacs, Emacs Lisp Reference, Programming in Emacs Lisp: An Introduction, GAWK: The GNU Awk User’s Guide, Make, and Bison.

Our other manuals also lie flat when opened, using a GBC (comb) binding. Our manuals are 7 in by 9.25 in except the 8.5 in by 11 in Calc manual.

The edition number of the manual and version number of the program listed after each manual’s name were current at the time this Bulletin was published.

Debugging with GDB (for Version 4.16) tells how to run your program under GNU Debugger control, examine and alter data, modify a program’s flow of control, and use GDB through GNU Emacs.

The GNU Emacs Manual (13th Edition for Version 20) describes editing with GNU Emacs. It explains advanced features, including international character sets; outline mode and regular expression search; how to use special programming modes to write languages like C++ and TEX;

how to compile and correct code; how to make your own keybindings; and other elementary customizations.

Programming in Emacs Lisp: An Introduction (October 1995 Edition 1.04) is for people who are not necessarily interested in programming, but who do want to customize or extend their computing environment. If you read it in Emacs under Info mode, you can run the sample programs directly.

The GNU Emacs Lisp Reference Manual (Edition 2.4 for Version 19.29) and The GNU Emacs Lisp Reference, Japanese Edition (Japanese Draft Revision 1.0, from English Edition 2.4 for Version 19.29) cover this programming language in depth, including data types, control structures, functions, macros, syntax tables, searching/matching, modes, windows, keymaps, byte compilation, and the operating system interface.

GNU Software for MS-DOS and MS-Windows is a book and CD combination containing both source code and runnable executables for MS-DOS, MS-Windows and MS-Windows 9X.

GAWK: The GNU Awk User’s Guide (Edition 2 for Version 3.0.3) tells how to use gawk. It is written for those who have never used awk and describes features of this powerful string and record manipulation language. It clearly delineates those features which are part of POSIX awk from gawk extensions, providing a comprehensive guide to awk program portability.

GNU Make (Edition 0.50 for Version 3.75 Beta) describes GNU make, a program used to rebuild parts of other programs. The manual tells how to write makefiles, which specify how a program is to be compiled and how its files depend on each other. Included are an introductory chapter for novice users and a section about automatically generated dependencies.

The Flex manual (Edition 1.03 for Version 2.3.7) teaches you to write a lexical scanner definition for the flex program to create a C++ or C-coded scanner that recognizes the patterns defined. You need no prior knowledge of scanners.

The Bison Manual (November 1995 Edition for Version 1.25) teaches you how to write context-free grammars for the Bison program that convert into C-coded parsers. You need no prior knowledge of parser generators.

Using and Porting GNU CC (November 1995 Edition for Version 2.7.2) tells how to run, install, and port the GNU C Compiler to new systems. It lists new features and incompatibilities of GCC, but people not familiar with C will still need a good reference on the C programming language. It also covers G++.

The Texinfo manual (for Version 3.11 of Texinfo) explains the markup language that produces our online Info documentation & typeset hardcopies. It tells you how to make tables, lists, chapters, nodes, accented & special characters, indexes, cross references, & how to catch mistakes.

The Termcap Manual (3rd Edition for Version 1.3), often described as “twice as much as you ever wanted to know about termcap,” details the format of the termcap database, the definitions of terminal capabilities, and the process of interrogating a terminal description. This manual is primarily for programmers.

The C Library Reference Manual (Edition 0.07 for Version 1.09 Beta) describes the library’s facilities, including both what Unix calls “library functions” & “system calls.” We are doing small copier runs of this manual until it becomes more stable. Please send fixes to bug-glibc-manual@gnu.org.

The Emacs Calc Manual (for Version 2.02) is both a tutorial and a reference manual. It tells how to do ordinary arithmetic, how to use Calc for algebra, calculus, and other forms of mathematics, and how to extend Calc.

How to Get GNU Software

All the software & publications from the FSF are distributed with permission to modify, copy, and redistribute. One way to get GNU software is to copy it from someone else who has it.

You can also get GNU software directly from the FSF by ordering CD-ROMs and books. Such orders provide most of the funds for the FSF staff to develop more free software, so please support our work by ordering from the FSF if you can. See the FSF Order Form, in the centerfold.

There are also third party groups who distribute our software.

Some are listed in Free Software Redistributors Donate, page 7. Also see Free Software for Non-Unix-Like Systems, page 47. 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 responses.

If you decide to do business with a commercial distributor of free software, ask them how much they do to assist free software development, e.g., by contributing money to free software development projects or by writing free software themselves for general use. By basing your decision partly on this factor, you can help encourage support for free software development.

Our main FTP host is very busy & limits the number of logins. Please use one of these other sites that also provide GNU software via FTP (program: ftp, user: anonymous, password: your Email address, mode: binary). If you

can’t reach one of them, get the software from GNU’s main FTP host,

ftp.gnu.org. More hosts & details are in ‘/pub/gnu/GETTING.GNU.SOFTWARE’
& ‘/pub/gnu/GNUinfo/FTP’ on any host.

Most of the files on the FTP sites are compressed with gzip to reduce FTP

traffic. Refer to ‘/pub/gnu/README-about-.gz-files’ on any FTP site for

instructions on uncompressing them. (uncompress and unpack do not work!)

• Africa: ftp.sun.ac.za.
• Americas: ftp.unicamp.br, ftp.inf.utfsm.cl, sunsite.ulatina.ac.cr,
  ftp.cs.ubc.ca in ‘/mirror2/gnu’.

• Asia:

  ftp.cs.titech.ac.jp, ftp.nectec.or.th in ‘/mirrors/gnu’,
  cair-archive.kaist.ac.kr.

• Australia:

  archie.au (ACSnet: archie.oz), ftp.progsoc.uts.edu.au,
• Europe: ftp.fi.muni.cz, ftp.etsimo.uniovi.es, ftp.ieunet.ie,
  ugle.unit.no, ftp.funet.fi, ftp.denet.dk,
  ftp.isy.liu.se,
  ftp.eunet.ch in ‘/mirrors4/gnu’,
  ftp.informatik.rwth-aachen.de,
  ftp.mcc.ac.uk,
  ftp.win.tue.nl,
  ftp.univ-lyon1.fr,  ftp.irisa.fr,
  ftp.eu.net.

• USA:

  ftp.digex.net, uiarchive.cso.uiuc.edu,
  ftp.hawaii.edu in ‘/mirrors/gnu’, mango.rsmas.miami.edu (VMS GCC),
  ftp.uu.net in ‘/archive/systems/gnu’, gatekeeper.dec.com.

If you can UUCP, get Email instructions from info@contrib.de (Europe).

FSF T-shirt

The front of our T-shirt (shown on the back cover) has the “typing gnu” artwork from the first GNU T-shirt, with the words “GNU’s Not Unix!” and “Free Software Foundation”. The back of the shirt has the preamble to the GNU General Public License.

These thick 100% cotton shirts are available in black or natural (off-white) in sizes S, M, L, XL, and XXL; in burgundy or blue-green in L, XL, and XXL; and a few XXXL black. Check our web site to see what is currently available; there may also be older designs available in certain sizes and colors.

GNU T-shirts often create spontaneous friendships at conferences and on university campuses. Wear one today!

Free Software for Non-Unix-Like Systems

We do not support GNU software on most non-Unix-like systems because that is peripheral to our goal: making the free operating system GNU as good as possible. Volunteers have ported many GNU programs to MS-DOS and MS-Windows, and because these systems are so popular, we have decided to publish a book and CD-ROM containing those ports—but even these systems are a side issue. We do not want to get involved with supporting GNU software on non-Unix-like systems, not even Microsoft systems.

However, we are willing to publish information about groups who do support and maintain such ports. If you are aware of any such efforts, please send the details, including postal addresses, archive sites, and mailing lists, to either address on the front cover.

Please do not ask us for more information about the projects listed below, or any other software for these operating systems, or other non-Unix-like systems. We do not maintain any of it and have no additional information.

• Boston Computer Society The BCS had numerous free microcomputer programs, including some GNU programs. The BCS is now dissolved (see ‘http://www.bcs.org/’ for details), but many of the smaller groups operating under it (see

  ‘http://bcs1.ziplink.net/groups/’ for a list) are continuing.

• GNU Software on the Amiga A large number of GNU programs have been ported to the Amiga and to BeOS as part of the Geek Gadgets project. The Geek Gadgets project is headed by Fred Fish (fnf@ninemoons.com) and actively supported by a dedicated group of Amiga and BeOS enthusiasts. There is a mailing list (gg@ninemoons.com) for general discussion about Geek Gadgets, and several program specific mailing lists. Send email to majordomo@ninemoons.com with the body of the message containing the single word “help”, for more information about what lists are available and how to subscribe. The Geek Gadgets project also has a web page at ‘http://www.ninemoons.com/GG/’ and an anonymous CVS server with global read access (see web page for more info). For info on the GNU Emacs port, ask Dave Gilbert, dgilbert@jaywon.pci.on.ca

  or see ‘http://www.realtime.tinymush.org/~dgilbert/emacs-19.html’

for a status update.

You can get more info from a GNU FTP host (see How to Get GNU Software,

  page 46) in the file ‘/pub/gnu/MicrosPorts/Amiga’.

• GNU Software for Atari TOS and Atari Minix Get Atari ports by anonymous FTP from atari.archive.umich.edu, in

‘/atari/Gnustuff’, maintained by Howard Chu, howard@lloyd.com. The

GNU software runs on all Atari 68000 and 68030-based systems; a hard drive and 4 MB RAM minimum are recommended for using the compilers. See USENET newsgroups, such as comp.sys.atari.st.tech, for discussions.

• GNU Software for OS/2 Ports of many GNU programs are on the FTP host ftp-os2.cdrom.com in ‘/pub/os2’. One of these is of the GNU C/C++/Objective-C Compiler to OS/2 2.x and OS/2 Warp, with the GNU assembler, documentation, and OS/2-specific C libraries. This is Eberhard Mattes’ emx port, which also features GDB and many Unix-related library functions like fork. Programs compiled by this port also run on a 80386 under DOS. It is in directory ‘/pub/os2/emx09c’. emx 0.9c is a port of GCC 2.7.2.1. To join the Email list, send Email containing

‘subscribe emx’ to majordomo@iaehv.nl.

Project GNU Wish List

• Volunteers to help write programs and documentation. Send mail to gnu@gnu.org for the task list and coding standards.

• Volunteers to help maintain a broad catalog of free software packages for the GNU web site.

• Oleo extensions and other free software for business, such as accounting and project management programs. Graphical free software applications for ordinary users who are not programmers.

• Volunteers to distribute this Bulletin at technical conferences, trade shows, local and national user group meetings, etc. Volunteers to get articles into their user group newsletters. Please phone or fax the numbers on the front cover, or Email fsforder@gnu.org to make arrangements.

• Boston area volunteers for various tasks in the FSF Distribution and Programming Offices. Please contact us at either address on the front cover.

• Remote access for building Deluxe Distributions on platforms not yet included on the Compiler Tools Binaries CD-ROM, page 42, especially those that don’t normally come with a C compiler. To volunteer a login and space on your system, please write to gnu@gnu.org.

• A volunteer to manage the Dictionary Project. To volunteer, please contact

gnu@gnu.org.

• A very good programmer who would like a job working on the GNU Hurd.

• A few multi-gigabyte SCSI disks.

• Pentium Pro or Pentium laptop or desktop PCs.

• Professors who might be interested in sponsoring or hosting research assistants to do actual GNU development, with partial FSF support.

• Information about free software or developers of free software that we may not know about. Often, we only find out about interesting projects because a user writes and asks us why we have not mentioned those projects!

• 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

citation to citations@gnu.org.

• Money, of course.

Thank GNUs

Several friends of GNU requested donations to the FSF in lieu of gifts or compensation to themselves. We appreciate their generosity.

Thanks to all who made substantial donations to the FSF in money or in kind (see Become a Patron of the FSF, page 7). Since January 1997, that is:

• FSF Patrons ($5,000 or more): AT Computing (Netherlands), Robert Biersack, Russell Brand of Responsible Solutions, John Carmack of ID Software, Kazuhisa Ichikawa, Kyoto Micro Computer (Japan), Nihon Sun Users’ Group (Japan), Yutaka Niibe, Red Hat Software, The Derald H. Ruttenberg Foundation, Seiko Epson (Japan);

• FSF Sustaining Contributors ($1000-4999): Anonymous, ASCII (Japan), Cygnus Solutions, Paul Eggert, Doug Evans, Andrew Hall & Natalie Olsen, HCC C Users’ Group (The Netherlands), Infomagic, Sin’ya Kanematu, Donald & Jill Knuth, David Ignat, Neal McBurnett & Holly Lewis, NeXT Users’ Society (Japan), Nord Family Foundation, Open Systems Consultants (Norway), Lynn Quam, X Consortium;

• FSF Contributors ($500-999): Computational Logic (Warren Hunt), Brian Gough, Guddland Digital (Luxembourg), Terence O’Gorman, Lewis Patterson, Arnold Robbins and SSC, Steve Schoggen, Vernor Vinge, Hiroo Yamagata, Bradley Yearwood.

• FSF Supporters ($100-499): Anonymous, Gerald Alldredge, Andrew Alleman, John Baxter, Andrew Bishop, Dan Bracken in honor of Marcus Daniels, Tony Bradford, Rick Bronson, Joseph Buck, Paul Budnik, Jeff Byers, Maurizio Cachio, Michael Coleman, Ken Clark, CSA Engineering (Warren Gibson), Josh DuBois, Edward DuFossat, Albert Flügel, Matteo Frigo, Yukitoshi Fujimura, James Gaidos, John Goebel, Ram Gopalaswamy, Ian Haggard, Harry Hickey, Aaron Hillegas, In-seok Hong, Inergy Online (Frohman Anderson), IKARIOS (France), ITiV AB (Sweden), Miguel Jimenez, Lowell Johnson, Thouis Jones, Geoff Knauth & family, Mark McCreary, Mike Mull, Peter Neumann, Jill & Kenneth Olstad, Donald Patterson, Vance Petree, Matthew Pharr, Nick Pidgeon, Stefan Rajec, Alfredo Reed, Research Grants Council (Hong Kong), Robert Reynolds, Lex Romanczyk, Mark Santesson, Don Scarborough, Rob Schecter, Richard Schultz, Norman Shapiro, Westley Sherman, John Smyth, Alexander Sousa, Vance Strickland, Sun Users’ Group – Deutschland, William Swats, Teknowledge (Benedict Mahoney), Mike Thomas, Louis Vitela, United Way contributors, Steve Wadlow, William Webber, Wizardry (John & Carol Belew), X Market, Stanley Zisk.

Thanks also to the very many who made smaller donations. Thanks to all who purchased our CD-ROMs, manuals, reference cards, and T-shirts. Thanks to all the organizations who purchased Deluxe Distributions and to COS Inc., PCI Inc., and SPDCC Inc., for lending systems on which to build them.

Thanks to Hiroshi Koyama and the other authors of the Japanese Linux Primer, who have donated part of their payment from Toppan Publishing.

Thanks to Gentia Software for funding the port of GNU Objective-C to DEC Alpha/Windows NT. Thanks to the Institute for System Design Technology of GMD Forschungszentrum Informationstechnik for funding development of the GCC array bounds-checking and verbose reporting features.

For assistance of many kinds, thanks to the Artificial Intelligence Laboratory, Laboratory for Computer Science, and Project Athena, all at MIT; to Cygnus Solutions; and to Scott Christley and Net Community.

Thanks to the University of Massachusetts at Boston for providing space and internet access for our machines, to Networks On Line for providing our Web server machine, to Tim Carlson for arranging secondary name service at the Santa Fe Institute, and to the many providers of mirror Web and FTP sites.

Thanks to all those mentioned elsewhere, especially those volunteers listed on the inside front cover (see “GNU’s Who”). Thanks to Aaron Ball, Karl Berry, Rick Martin, and Len Tower, for their help as system administrators. Thanks to AMB for invaluable technical assistance.

Thanks to Computer Publishing Group (SunExpert Magazine) for advertising space. Thanks to LXNY and Sergio Ruocco, who arranged tables at conferences in New York and Rome, and to those volunteers who helped staff them. For continuing help in Japan, thanks to Ken’ichi Handa, Professor Takafumi Hayashi, Mieko Hikichi, Nobuyuki Hikichi, the Japan Unix Society, and Mitsuru Nakamura of The Village Center Inc.

Thanks to all who assigned copyrights to the FSF or otherwise placed their source code under the GNU General Public License. Thanks to all who contributed documentation, good bug reports, or other useful criticism.

The creation of this Bulletin is our way of thanking all who have expressed interest in what we are doing. Thanks to those who distribute multiple copies where they will be read.

Donations Translate Into Free Software

If you appreciate Emacs, the GNU C Compiler, Ghostscript, and other free software, you may wish to help make sure there is more in the future. Remember, donations translate into more free software!

Donations to FSF are deductible for U.S. federal and some other taxes. We gladly accept donations in any currency, but the U.S. dollar is the most convenient.

If your employer has a matching program for charitable donations, please ask them to approve the FSF as a recipient and to match your donation. Consult your personnel department.

Circle the amount of your donation, complete this form, and send it with your donation to: Free Software Foundation, Inc., 59 Temple Place – Suite 330, Boston, MA 02111–1307, USA. You can donate by fax with a credit card; fax to

+1–617–542–2652. We accept

Carte Blanche, Diner’s Club, Discover, JCB, MasterCard, Visa, or American Express.

We offer public “Thank GNUs” and some modest gifts to $100 and greater donors (see Become a Patron of the FSF, page 7; Thank GNUs, page 49).

    $5000 (patron)   $1000   $500   $100   $50   Other __________
    Card type: __________________Expiration Date: _____________
    Account Number: _____________________________________________
    Cardholder's Signature: _____________________________________
    Name: _______________________________________________________
    Street Address: _____________________________________________
    City/State/Province: ________________________________________
    Zip Code/Postal Code/Country: _______________________________
    Telephone Number: ___________________________________________
    Email Address: ______________________________________________

Give to GNU the United Way

If you participate in a United Way campaign, please consider designating the Free Software Foundation as the recipient of your donation.

Just how do to this depends on where you live, because the United Way is not a single nationwide corporation, but rather a loose alliance of separate local organizations with distinct bylaws and methods. Some United Way chapters list the FSF as an affiliated charitable organization, which is a pre-approved recipient of donations. Some will approve any 501(c)3 association, such as the FSF; some have a narrow explicit focus yet will “respond to our donors concern about a specific agency to which they are committed”. Some chapters use a form that prompts for an unlisted “other” recipient; others require more initiative from you.

CAN NOT USE THE SAME BACK PAGE AS BULL 22 The art has changed as we are doing a new T-shirt. (The Return Address Block)

Free Software Foundation, Inc. Email: gnu@gnu.org 59 Temple Place – Suite 330 Boston, MA 02111-1307 USA

TIMESTAMP

1 May 1998 22:33

GNU’s Bulletin March, 1998

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: +1–617–542–5942
59 Temple Place – Suite 330  Fax (including Japan): +1–617–542–2652
Boston, MA 02111-1307  Electronic Mail: gnu@gnu.org

USA  World Wide Web: ‘http://www.gnu.org’

Table of Contents

GNU’s Who . . . . . . . . . . . . . . . . . . . . . . 2 Administrivia and Copyright. . . . . . . 2 Other GPL’ed Software . . . . . . . . . . . 2 What Is the FSF? . . . . . . . . . . . . . . . . 4 What Is Copyleft? . . . . . . . . . . . . . . . . 4 What Is Linux? . . . . . . . . . . . . . . . . . . . 5 What Is a GNU/Linux System? …. 5 What Is the Hurd?. . . . . . . . . . . . . . . . 6 Become a Patron of the FSF. . . . . . . 7 Free Software Redistributors Donate 7 Help from Free Software Companies 8 European Distributor . . . . . . . . . . . . . 9 GNU/Linux Helps Bring Titanic To

Life. . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 GNU in Space . . . . . . . . . . . . . . . . . . . . 9 GNUs Flashes . . . . . . . . . . . . . . . . . . . 10 Help the Translation Project. . . . . . 11 GNU & Other Free Software in Japan

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Forthcoming GNUs . . . . . . . . . . . . . . 13 GNU Software in the Year 2000 … 15 Free Software Support . . . . . . . . . . . 15 GNU Software . . . . . . . . . . . . . . . . . . . 16

Configuring GNU Software . . . . . 17 GNU and Recommended Software

Now Available . . . . . . . . . . . . . . . 17 The Deluxe Distribution. . . . . . . . . . 40 CD-ROMs . . . . . . . . . . . . . . . . . . . . . . 41

Pricing of the GNU CD-ROMs. . 41 What Do the Different Prices

Mean? . . . . . . . . . . . . . . . . . . . . . 41 Why Is There an Individual Price?

. . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Is There a Maximum Price? … 42 March 1998 Compiler Tools

Binaries CD-ROM . . . . . . . . . . . 42 Source Code CD-ROMs . . . . . . . . 42 March 1998 Source Code

CD-ROMs . . . . . . . . . . . . . . . . . 43 CD-ROM Subscription Service …. 44 GNU Documentation . . . . . . . . . . . . 44 How to Get GNU Software . . . . . . . 46 FSF T-shirt . . . . . . . . . . . . . . . . . . . . . 47 Free Software for Non-Unix-Like

Systems. . . . . . . . . . . . . . . . . . . . . . . 47 Project GNU Wish List . . . . . . . . . . 48 Thank GNUs . . . . . . . . . . . . . . . . . . . . 49 Donations Translate Into Free

Software . . . . . . . . . . . . . . . . . . . . . . 51 Give to GNU the United Way …. 51 Free Software Foundation Order Form

. . . . . . . . . . . . . . . . . . . . . . . . . . Center