------------------------------------------------------------------------------
GNU's Bulletin January, 1995
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--876--3296
675 Massachusetts Avenue Fax: (including Japan) +1--617--492--9057
Cambridge, MA 02139-3309 Free Dial Fax (in Japan):
USA 0031--13--2473 (KDD)
Electronic mail: gnu@prep.ai.mit.edu 0066--3382--0158 (IDC)
------------------------------------------------------------------------------
Ian Murdock joins us to do Debian GNU/Linux releases
and other programming tasks.
Michael Bushnell and Roland McGrath work together on the Hurd.
Roland also maintains make and the GNU C library.
Karl Heuer enhances GNU Emacs.
Dan Hagerty has been hired as our system obfuscator and release coordinator. Charles Hannum works on typesetting and many other jobs.
Robert J. Chassell is our Secretary/Treasurer. Lisa Bloch is our Executive Director. Carl Hoffman is our Japan fundraiser and conference organizer. Recent hire Mike Drain is our distribution manager and Bryttan Bradley mangage many of the functions of the Business Office.
Mark Ashton worked on OCR software for us this summer and has now gone back to finish college. Noah Friedman, Jan Brittenson, Larissa Carlson and Len Kagelmacher have left the FSF. We thank them all for doing excellent work and for continuing to volunteer their time. Noah was one of the most dedicated and hardest working employees we have had and is particularly missed.
Richard Stallman continues as a volunteer who does countless tasks, such as Emacs maintenance. Thanks to volunteers Scott Ewing and Raja Daoud for helping to coordinate all the volunteers in the GNU Project. Thanks to volunteer Tami Friedman for handling much administrivia here at the FSF. Volunteer Len Tower remains our online JOAT (jack-of-all-trades), handling mailing lists and gnUSENET, information requests, etc.
Written and Edited by: Karl Heuer, Daniel Hagerty,
Robert J. Chassell and Leonard H. Tower Jr.
Illustrations by: Etienne Suvasa
Japanese Edition by: Mieko Hikichi and Nobuyuki Hikichi
ISSN (International Standard Serial Number): 1075-7813
The GNU's Bulletin is published at the end of January and the end of June of each year. Please note that there is no postal mailing list. To get a copy, send your name and address with your request to the address on page 1. Enclosing a business sized self-addressed stamped envelope ($0.52) and/or a donation of a few dollars is appreciated but not required. If you're from outside the USA, sending 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 (C) 1995 Free Software Foundation, Inc.
Permission is granted to anyone to make or 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.
------------------------------------------------------------------------------
...imagine how little used calculus would have been if a court had decided that no one could study, use or do research on it without paying a royalty to Newton's designated heirs.
- The Independent, October 5, 1992
------------------------------------------------------------------------------
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" (pronounced "guh-new", "GNU's Not Unix") 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 two specific freedoms once you get it: first, the freedom to copy a program and give it away to your friends and co-workers; and second, the freedom to change a program as you wish, by having full access to source code. You can study the source and learn how such programs are written. You may then be able to port it, improve it and share your changes with others. If you redistribute GNU software you may charge a distribution fee or give it away, so long as you include the source code and the GPL; see section What Is Copyleft?, 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;
Robert J. Chassell, Secretary/Treasurer; Gerald J. Sussman,
Harold Abelson, and Leonard H. Tower Jr., Directors.
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 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 public license appear at the end of each license.
The Hurd will be the foundation of the whole GNU system. It is is a collection of server processes that run on top of Mach, a free message-passing kernel developed by CMU. Mach's virtual memory management and message-passing facilities are extensively used by the Hurd. The GNU C Library will provide the Unix system call interface, using the Hurd servers for those services it can't provide itself.
One goal of the Hurd is to establish a framework for shared development and maintenance. The Hurd is like GNU Emacs in that it will allow 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.
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 GCC) once a Mach port to a particular platform exists. Right now we are using the University of Utah's Mach distribution, but we hope that will be unified with the distribution produced by the Open Software Foundation.
Important progress has been made recently; see section GNUs Flashes.
There are significant projects relating to the Hurd for which we need
volunteers. Experienced system programmers who are interested should send
mail to gnu@prep.ai.mit.edu. Porting the Mach kernel or the
GNU C Library to new systems is another way to help development of the
Hurd.
by Richard Stallman
The Sun Users Group Deutschland has agreed to add a donation to the FSF to the price of their next CD-ROM of GNU software. Potential purchasers will know precisely how much of the price is for the FSF and how much is for SUGD. Austin Code Works, a redistributor of free software, is supporting free software development by giving the FSF 20% of the selling price for the GNU software packages they produce and sell. Walnut Creek CD-ROM, Inc. and Info Magic, two more free software redistributors, are also giving us a percentage of their selling price. CQ Publishing made a large donation from the sales of their book about GAWK in Japanese.
In the long run, the success of free software depends on how much new free software people develop. Free software distribution offers an opportunity to raise funds for such development in an ethical way. These redistributors have made use of the opportunity. 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 are 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 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 for a fee, we can assure a steady flow of resources for making more free software.
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 partially on this factor, you can help encourage those who profit from free software to contribute to its growth.
These free software support companies regularly donate a part of their income to the Free Software Foundation to support the development of new GNU programs. Listing them here is our way of thanking them. Wingnut has made a pledge to donate 10% of their income to the FSF, and have also purchased several Deluxe Distribution packages in Japan. (Wingnut is SRA's special GNU support group). Also see section Cygnus Matches Donations!.
Wingnut Project
Software Research Associates, Inc.
1-1-1 Hirakawa-cho, Chiyoda-ku
Tokyo 102, Japan
Phone: (+81-3)3234-2611
Fax: (+81-3)3942-5174
E-mail: info-wingnut@sra.co.jp
Contributed Software GbR Graefestr. 76 D-10967 Berlin Germany Telephone: (+49-30) 694-69-07 Fax: (+49-30) 694-68-09 Electronic-Mail:info@contrib.deBBS & no-charge free software archive: Dialins: (+49-30) 693-40-51 (eight USR DS's) (+49-30) 694-60-55 (five ZyXELs) Telnet:uropax.contrib.de[192.109.39.2] FTP:ftp.contrib.deWWW: `http://www.contrib.de/'
Phil Zimmermann, who wrote the public-key encryption program known as Pretty Good Privacy ("PGP") and released it on the Internet, is now facing prosecution for "exporting" it out of the United States.
There is a law prohibiting the export of encryption software from the US. Zimmermann did not do this, but the US government hopes to establish the proposition that posting an encryption program on a BBS or on the Internet constitutes exporting it--in effect, stretching export control into domestic censorship.
If the government wins, that will have a chilling effect on the free flow of information on the global network, as well as on everyone's privacy from government snooping.
Estimates are that Zimmermann's defense will cost over $100,000--and that doesn't even count lawyers' fees. To help pay this, a legal trust fund, the Philip Zimmermann Defense Fund (PZDF), has been established. Donations are accepted in any reliable form, check, money order, or wire transfer, and in any currency, as well as by credit card.
To send a check or money order by mail, make it payable, not to Phil Zimmermann, but to "Philip L. Dubois, Attorney Trust Account." Mail the check or money order to the following address:
Philip Dubois 2305 Broadway Boulder, CO 80304 USA Telephone: +1-303-444-3885
To send a wire transfer, your bank will need the following information:
Bank: VectraBank Routing #: 107004365 Account #: 0113830 Account Name: ``Philip L. Dubois, Attorney Trust Account''
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 now do; 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 and other consulting services. It is in the file `etc/SERVICE' in the GNU Emacs distribution, `SERVICE' in the GCC distribution and `/pub/gnu/GNUinfo/SERVICE' on a GNU FTP host (see section How to Get GNU Software for a list). Contact us if you would like a copy or wish to be listed in it. Those service providers who share their income with the FSF are listed in section Help from Free Software Companies.
If you find a deficiency in any GNU software, we want to know. We have
many Internet mailing lists for bug reports, announcements and questions.
They are also gatewayed into USENET news as the gnu.* newsgroups.
You can request a list of the mailing lists from either address on
the top menu.
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. 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 who reads our bug report mailing lists. Otherwise, use the Service Directory.
Please do not ask us to help you install software or figure out how to use it--but do tell us how an installation script fails or where documentation is unclear.
If you have no Internet access, you can get mail and USENET news via UUCP. Contact a local UUCP site, or a commercial UUCP site such as:
UUNET Communications Services
3110 Fairview Park Drive -- Suite 570
Falls Church, VA 22042
USA
Telephone: +1-800-4UUNET4
+1-703-204-8000
Fax: +1-703-204-8001
Electronic-Mail: info@uunet.uu.net
A list of commercial UUCP and Internet service providers is posted
periodically to USENET in the newsgroup news.announce.newusers with
`Subject: How to become a USENET site'. You can also get it via
anonymous FTP from the host rtfm.mit.edu in the file
`How_to_become_a_USENET_site', in the directory
`/pub/usenet-by-group/news.announce.newusers'.
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.
Changing Tactics:
The LPF has recently been placing less emphasis on communicating its position to individual programmers, and more on communicating with government and industry.
During 1994, the LPF testified at two patent office hearings and filed papers in two court cases (the Lotus v. Borland appeal and another look and feel case in Texas). These activities are less visible to the public, but directly relate to the goals of the LPF.
The LPF has also decided to drop the boycott against look and feel plantiffs as a tactic.
The LPF has been attempting to establish relationships with companies within the software industry. Adobe, Autodesk, Oracle, Synopsis, and Wind River Systems have all publically issued statements opposed to software patents.
It is a slow process, but real progress is being made.
Web Site:
The LPF now has a World Wide Web server. It contains general information
relating to the LPF, various documents the LPF has published, and any other
related information the LPF is able to assemble. The Web site is available
at URL: `http://www.lpf.org/'. Please suggest improvements to:
webmasters@lpf.org.
The League for Programming Freedom (LPF) aims to protect the freedom to write software. This freedom is threatened by "look-and-feel" interface copyright lawsuits and by software patents.
The League for Programming Freedom is a grass-roots organization of professors, students, business people, programmers, users, and and even software companies dedicated to bringing back the freedom to write programs. The League is not opposed to the legal system that Congress intended--copyright on individual programs. Our aim is to reverse the recent changes made by judges in response to special interests.
Membership dues in the League are $42 per year for programmers, managers and professionals; $10.50 for students; $21 for others.
To join, please send a check and the following information:
The League is not connected with the Free Software Foundation and is not concerned with the issue of free software. The FSF supports the LPF because, like any software developer smaller than IBM, it is endangered by software patents and interface copyrights. You are in danger, too! It would be easy to ignore the problem until you or your employer is sued, but it is more prudent to organize before that happens.
If you haven't made up your mind yet, write to LPF for more information:
League for Programming Freedom 1 Kendall Square - #143 P.O. Box 9171 Cambridge, MA 02139 USA Telephone: +1-617-243-4091 Electronic-Mail:lpf@uunet.uu.netWWW: `http://www.lpf.org/' FTP:ftp.uu.net:/doc/lpf
For several years, the Free Software Foundation has participated in a boycott of Apple, Lotus & Xerox sponsored by the League for Programming Freedom.
The League for Programming Freedom has decided to end the boycott (see section News from the LPF). So the FSF will now treat Apple operating systems like other non-free operating systems. This means we will accept patches for Apple systems when that is easy and painless, and usually not otherwise.
The aim of the GNU Project is developing the GNU operating system. Supporting other operating systems is something we do as a sideline when it seems good to do. If changes to support some other system are likely to take substantial maintenance time, it is better for us to reject them, and spend that time on tasks that contribute directly to the GNU system.
The FSF sponsored the third annual GNU Technical Seminar on December 5, 1994 in Tokyo. Richard Stallman spoke on the GNU Project and the GNU extension language plans. Gavin T. Nicol then spoke on the World Wide Web and compared the existing free operating systems. Finally, Michael Bushnell spoke on the Hurd. Bob Myers and David Littleboy translated the English lectures into Japanese. Over 140 people attended the seminar, and some Japanese publications interviewed Richard Stallman. The FSF also premiered the latest editions of our Source Code and Compiler Tool Binaries CD-ROMs. The seminar was supported by several organizations who did all the behind-scene work: LS-JP, NSUG, JUS, SEA, and CSRL-Aoyama Gakuin; and was supervised by Masayuki Ida, Carl Hoffman and Nobuyuki Hikichi. The Lisp Society of Japan, Computer Science Research Lab at Aoyama Gakuin University, and Software Research Associates, Inc. (SRA), and their staff provided help in countless ways for this seminar and the entire trip to Japan.
Seminars were also held at Aoyama Gakuin on December 7th, where Richard Stallman spoke on GNU Emacs Lisp as an Extension Language, and at The University of Aizu where both Richard Stallman & Michael Bushnell spoke.
The Japan Unix Society gave the FSF a booth at Unix Fair '94 in Yokohama. We thank all the volunteers and organizations who helped run this booth.
Our success at the seminars and trade show exceeded our expectations. We received many unsolicited donations from individual supporters and users' groups, and are thankful for the number of enthusiastic volunteers who helped us. In the future we hope to appear at even more Unix events both in Japan and elsewhere. If you would like to host a seminar, or need a speaker for a conference, please contact either address on the top menu.
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 their translation of the
GNU General Public License Version 2. 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 are working on a formal translation of the GNU Library General
Public License. They also solicit donations and offer GNU software
consulting.
nepoch (the Japanese version of Epoch) and MULE are available and
widely used in Japan. MULE (the MULtilingual Enhancement of GNU Emacs) can
handle many character sets at once. Its features are being merged
into the FSF's version of Emacs. The FSF does not distribute
nepoch, but MULE is available (see section December 1994 Source Code CD-ROM and the section Emacs Diskettes). You
can FTP it from sh.wide.ad.jp in /JAPAN/mule or
etlport.etl.go.jp in /pub/mule. See section GNU Software,
for more information about MULE.
The Village Center, Inc. prints a Japanese translation of the GNU Emacs Lisp Reference Manual and uploads the Texinfo source to various bulletin boards. They have also published a copylefted book, Nobuyuki's and Mieko's Think GNU. This appears to be the first non-FSF copylefted publication in Japan. Part of their profits are donated to the FSF. Their address is:
Village Center, Inc. 3-2 Kanda Jinbo-cho, Chiyoda-ku Tokyo 101, Japan Telephone: 03-3221-3520
Addison-Wesley Publishers Japan Ltd. has printed a Japanese translation of the GNU Make Manual and the GAWK Manual. Their address is:
Addison-Wesley Publishers Japan Ltd. Nichibou Bldg. 2F 1-2-2 Sarugaku-cho, Chiyoda-ku Tokyo 101, Japan Telephone: 03-3291-4581
The Institute for New Generation Computer Technology, ICOT, has
released the "ICOT Free Software (IFS)" distribution. The famous
Fifth Generation Computing System project produced this distribution,
which includes 100 systems for symbol processing, knowledge
processing, problem solving, inference, and natural language
processing. Many of them are based on parallel logic programming.
Nearly half of the software can run on UNIX workstations. For details,
contact ifs@icot.or.jp.
There is a mailing list in Japan to discuss both hardware and software
which is under the GNU General Public License. This list provides
information about making your own computer system. The main language used
on the list is Japanese. If you are interested in getting information or
having discussions in English, contact mka@apricot.juice.or.jp
or ishiz@muraoka.info.waseda.ac.jp.
Many groups in Japan now distribute GNU software. They include JUG, a PC user group; ASCII, a periodical and book publisher; the Fujitsu FM Towns users group; and SRA's special GNU support group, called Wingnut, who also purchased the first Deluxe package in Japan. (Since then, there have been several other purchases of the Deluxe package in Japan.)
It is easy to place an order directly with the FSF from Japan, thus funding
new code. To get an FSF Order Form written in Japanese, ask
japan-fsf-orders@prep.ai.mit.edu.
We encourage you to buy
software on tapes or CDs: for example, every 160 tape orders allows FSF to
hire a programmer for a year to write more free software.
In 1992, Marius Hancu, hancu@crim.ca, began a project to send
freely distributable software to Romania, called "Free Unix for Romania."
At that time, little such software was available in Romania. Recently, Ted
Lungu, lungu@thak.jpl.nasa.gov, took over project coordination.
The main focus has been on sending editors, debuggers, compilers, and operating system distributions using GNU/Linux and Free/NetBSD--all freely redistributable and able to run on inexpensive 80386 and 80486 PCs.
In addition, they have sought donations, sent equipment and computer science books to Romania, and created a list of volunteer technical consultants.
make, Emacs,
and most other GNU utilities. Progress is being made so rapidly that by the
time you read this it probably does much more. It is right on the verge of
being self-hosting (able to run on its own well enough to compile its own
source code and be used for its own development).
For a complete system we still have much more work to do, but we will make
an alpha release as soon as the network software is finished and shared
libraries have been implemented. We have a mailing list to distribute
announcements about progress; to be added to it, send mail to
hurd-announce-request@prep.ai.mit.edu.
dc, once packaged alone, is now packaged with
bc. Unlike the traditional Unix implementation, GNU bc is not
just a front end for dc.
netfax has been replaced by FlexFAX.
arnold@gnu.ai.mit.edu, a long-time volunteer
for the GNU Project, is the author of "What's GNU?", a semi-regular column in
the monthly magazine Linux Journal. The column discusses the
GNU Project, its software and other interesting free software. Authors
of significant GNU software packages occasionally write columns as
guest authors. For subscription information, contact
subs@ssc.com.
If a software system includes several programs that are extensible, they should all use the same extension language implementation. This means less for extension writers to learn, and that libraries of extensions may be useful with more than one program. A common language enables programs to exchange complex data structures or source code. A common implementation conserves both system and maintainer resources.
The GNU Project has started to build Guile: GNUs' Ubiquitous Extension Language. We will produce a library which programmers can use to make any ordinary C program extensible. We expect to use this library in many GNU programs and hope to see wide use elsewhere. We are basing Guile on SCM, a version of Scheme written by Aubrey Jaffer (see the JACAL item in section GNU Software). A number of cosmetic changes are being made, so the interpreter will be more useful as a C library. Volunteers are working on a complete Posix interface, an SCSH-like library, and a module system. Releases with only some of the features mentioned will begin early in 1995. SCM is already available.
The copyright terms for Guile will permit the use of the library even in proprietary programs. We plan to use terms similar to those used for X11.
Choosing Scheme helps to put aside controversy over "which extension language is best". It is a convenient target language, into which other languages may be translated. Even though maintainers must choose one extension language implementation, users can choose from any number of extension languages.
Anyone can make Guile applications programmable in their favorite language simply by writing a new translator. We intend to have a language that is like simplified C and one that is like an interactive command processor syntax. Guile will be able to run Emacs Lisp programs.
The GNU locale package (glocale) is a set of tools that provides a framework to help other GNU packages produce multilingual messages. glocale is currently undergoing alpha testing.
A handful of GNU packages have already been adapted and provided with
message translations for several languages. Translation teams have begun
to organize, using these packages as a starting point. But there are many
more packages and many languages for which we have no volunteer
translators. If you'd like to volunteer to work at translating messages,
please send mail to gnu-locale@prep.ai.mit.edu indicating what
language(s) you can work on.
Information about the current status of released GNU programs can be found in section GNU Software. Here is some news of future plans.
libobjects),
will have String objects that are integrated into the
Collection object hierarchy, a better allocation/deallocation
mechanism, improved features for distributed objects (including a
back-end using Mach ports instead of sockets), more extensive
random number generator facilities, and ports to more machines.
Volunteers are needed for additional projects; contact
mccallum@gnu.ai.mit.edu.
Paul_Kunz@slac.stanford.edu.
makeinfo and the World Wide Web (Also see section GNU Software)
makeinfo is being modified to translate Texinfo source files into
HTML documents that can be displayed from the Internet's World Wide Web.
schelter@math.utexas.edu.
gnu@prep.ai.mit.edu.
cs.nyu.edu in `/pub/gnat'. News about
GNAT is posted to the USENET newsgroup comp.lang.ada.
f2c & GCC, see section GNU Software)
We have released GNU Fortran (g77), developed by Craig Burley,
for public beta testing. For the time being, g77 produces code
that is generally object-compatible with f2c, and they use the
same run-time library (libf2c).
The g77 front end is stable, but 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: writing
documentation; improving diagnostics; speeding up compilation
especially for large initialized data tables; implementing
INTEGER*2, INTEGER*8, and similar features; and
arranging to build and install libf2c automatically.
We don't know when these things will be done, but we hope some will be
finished in the coming months. You can speed progress by working on
some of them or by offering funding.
A mailing list exists for announcements about g77. To
subscribe, ask info-gnu-fortran-request@prep.ai.mit.edu.
To contact the developer of g77, write to
fortran@prep.ai.mit.edu.
rx, a new regular expression library which is
faster than the current library we use. Currently it is only being
distributed with sed; eventually we will distribute it as a separate
package as well.
This new library is nearly a drop-in replacement for the current regex
library used by the GNU Project, but it needs a few more features to
be used in Emacs.
Freely redistributable information isn't just software. We have a list
of groups providing various books, historical documents, and more. You can
FTP the list in file `/pub/gnu/FreelyAvailableTexts' from
prep.ai.mit.edu. Please let either address on
the top menu
know of additional entries.
All our software is available via FTP; see section How to Get GNU Software. In addition, we offer software on various media and printed documentation:
We welcome all bug reports sent to the appropriate electronic mailing list (see section Free Software Support).
In the 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 distribution tape, diskette or newer CD-ROM, some of the programs may be newer, and therefore the version number higher.
Key to cross reference:
Configuring GNU Software:
We are using a uniform scheme for configuring GNU software packages in
order to compile them. It uses the autoconf program (see item
below). The goal is to have all GNU software support the same
alternatives for naming machine and system types.
When the GNU system is complete it will be possible to configure and build the entire system at once, eliminating the need to separately configure each individual package.
The configuration scheme can also specify both the host and target system, so you can easily configure and build cross-compilation tools.
GNU software currently available:
(For new features and coming programs, see section Forthcoming GNUs.)
acm (SrcCD, UtilT)
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 more accurate simulation of real airplane flight
characteristics.
m4 macro calls. Autoconf
requires GNU m4 to operate, but the resulting configure scripts it
generates do not.
Most GNU programs now use Autoconf-generated configure scripts.
sh and offers many extensions found in csh and
ksh. BASH has job control, csh-style command history, and
command-line editing (with Emacs and vi modes built-in, and the
ability to rebind keys) via the readline library. BASH conforms to
the POSIX 1003.2 shell specification.
bc (DjgppD, DosCD, SrcCD, UtilT)
bc is an interactive algebraic language with arbitrary precision
numbers. GNU bc follows the POSIX.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.
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 source for Texinfo documentation (not yet
published on paper).
Presently BFD is not distributed separately; it is included with
packages that use it.
ar,
c++filt,
demangle,
gas,
gprof,
ld,
nlmconv,
nm,
objcopy,
objdump,
ranlib,
size,
strings,
and
strip.
Binutils Version 2 uses the BFD library. The GNU
linker ld emits source-line numbered error messages for
multiply-defined symbols and undefined references. It interprets a
superset of the AT&T Linker Command Language, which gives general control
over where segments are placed in memory. nlmconv converts object
files into Novell NetWare Loadable Modules. objdump can
disassemble code for a29k, ALPHA, H8/300, H8/500, HP-PA, i386, i960, m68k,
m88k, MIPS, SH, SPARC, & Z8000 processors, and can display other data
(e.g., symbols & relocations) from any file format understood by BFD.
yacc. Texinfo source for the Bison Manual
and reference card are included. See section GNU Documentation.
malloc which
wastes less memory than the old GNU version. The GNU regular-expression
functions (regex and rx) now nearly conform to the POSIX 1003.2
standard.
GNU stdio lets you define new kinds of streams, just by writing a
few C functions. The fmemopen function uses this to open a
stream on a string, which can grow as necessary. You can define your
own printf formats to use a C function you have written. For
example, you can safely use format strings from user input to implement
a printf-like function for another programming language.
Extended getopt functions are already used to parse options,
including long options, in many GNU utilities.
The C Library runs on Sun-3 (SunOS 4.1), Sun-4 (SunOS 4.1 or Solaris 2),
HP 9000/300 (4.3BSD), SONY News 800 (NewsOS 3 or 4), MIPS DECstation
(Ultrix 4), DEC Alpha (OSF/1), i386/i486 (System V, SVR4, BSD, SCO 3.2 &
SCO ODT 2.0), Sequent Symmetry i386 (Dynix 3) & SGI (Irix 4). Texinfo
source for the GNU C Library Reference Manual is included
(see section GNU Documentation); the manual is now being updated.
gnuplot & comes with source for a
reference card & a Manual. See section GNU Documentation.
cpio (DjgppD, DosCD, SrcCD, UtilD, UtilT)
cpio is an alternative 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.
office@usenix.org.
expect,
which runs scripts to conduct dialogs with programs.
diff compares files showing line-by-line changes in several
flexible formats. It is much faster than traditional Unix versions. The
Diffutils package contains diff, diff3, sdiff,
and cmp.
Recent Diffutils improvements include:
a new diff option to do all input/output in binary;
this is useful on some non-Posix hosts, and more consistent handling of
character sets.
Plans for the Diffutils package include support for
internationalization (e.g., error messages in Chinese), and for some
non-Unix PC environments.
flex, GAS, and the GNU Binutils. Full source code is
provided.
It requires at least 5MB of hard disk space to install and 512K
of RAM to use.
It supports SVGA (up to 1024x768),
XMS & VDISK memory allocation,
himem.sys,
VCPI (e.g., QEMM, DESQview, & 386MAX), and
DPMI (e.g., Windows 3.x, OS/2, QEMM, & QDPMI).
Ask djgpp-request@sun.soe.clarkson.edu to join a DJGPP users
mailing list.
dld (LangT, 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. Currently supported are VAX (Ultrix), Sun 3
(SunOS 3.4 & 4.0), SPARC (SunOS 4.0), Sequent Symmetry (Dynix), & Atari ST.
doschk (DjgppD, DosCD, SrcCD, UtilT)
This program is intended as 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 with 8+3 character filenames.
ecc (SrcCD, UtilT)
ecc is a Reed-Solomon error correction checking program, which can
correct three byte errors in a block of 255 bytes and detect more severe
errors. Contact paulf@Stanford.EDU for more information.
ed (SrcCD, UtilT)
Ed is the standard text editor.
es (SrcCD, UtilT)
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). Like rc, it is great for both interactive use and for
scripting, particularly since its quoting rules are much less baroque
than the C or Bourne shells.
f2c (LangT, SrcCD)
f2c converts Fortran-77 source files into C or C++, which can be
compiled with GCC. You can get bug fixes by FTP from site
netlib.att.com or by email from
netlib@research.att.com.
The fixes are summarized in the file `/netlib/f2c/changes.Z'.
See section Forthcoming GNUs, for information about GNU Fortran.
chgrp,
chmod,
chown,
cp,
dd,
df,
dir,
du,
install,
ln,
ls,
mkdir,
mkfifo,
mknod,
mv,
mvdir,
rm,
rmdir,
sync,
touch,
&
vdir.
Only some of these are on the section Selected Utilities Diskettes.
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 xargs, which applies a command to a
list of files, and locate, which scans a database for file
names that match a pattern.
flex (DjgppD, DosCD, LangT, SrcCD, UtilD)
flex is a replacement for the lex scanner generator.
flex was written by Vern Paxson of the Lawrence Berkeley Laboratory
and generates far more efficient scanners than lex does.
Source for the Flex Manual and reference card are included.
See section GNU Documentation.
bpltobzr,
bzrto,
charspace,
fontconvert,
gsrenderfont,
imageto,
imgrotate,
limn,
and
xbfe.
awk. It also provides several useful extensions not found in
other awk implementations. Texinfo source for the GAWK
Manual comes with the software. See section GNU Documentation.
object). As much as possible,
G++ is kept compatible with the evolving draft ANSI standard, but not
with cfront (AT&T's compiler), which has been diverging from ANSI.
The GNU C Compiler is a fairly portable optimizing compiler which
performs automatic register allocation, common sub-expression
elimination, invariant code motion from loops, induction variable
optimizations, constant propagation and copy propagation, delayed
popping of function call arguments, tail recursion elimination,
integration of inline functions and frame pointer elimination,
instruction scheduling, loop unrolling, filling of delay slots, leaf
function optimization, optimized multiplication by constants, a certain
amount of common subexpression elimination (CSE) between basic blocks
(though not all of the supported machine descriptions provide for
scheduling or delay slots), a feature for assigning attributes to
instructions, and many local optimizations that are automatically
deduced from the machine description. Position-independent code is
supported on the 68k, i386, i486, Pentium, Hitachi Slt, Hitachi H8/300,
Clipper, 88k, SPARC & SPARClite.
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: a29k, Alpha, ARM, AT&T
DSP1610, Convex cN, Clipper, Elxsi, Fujitsu Gmicro, H8/300, HP--PA (1.0 and
1.1) i370, i386, i486, Pentium, i860, i960, m68k, m68020, m68030, m68040,
m88k, MIPS, ns32k, PDP-11, Pyramid, ROMP, RS6000, SH, SPARC, SPARClite,
VAX, & we32k.
Operating systems supported include: AIX, ACIS, AOS, BSD, Clix, Ctix,
DG/UX, Dynix, Genix, GNU/Linux, HP-UX, ISC, Irix, Luna, LynxOS, Mach, Minix,
NewsOS, OSF, OSF-Rose, RISCOS, SCO, Solaris 2, SunOS 4, SysV, Ultrix, Unos,
VMS & Windows/NT.
The old (version 1) machine descriptions for the Alliant, Tahoe and Spur
(as well as a new port for the Tron) do not work, but are still included in
the distribution in case someone wants to work on them.
Using the configuration scheme for GCC, building a cross-compiler is as
easy as building a compiler for the same target machine.
We no longer maintain version 1 of GCC, G++, or libg++.
Texinfo source for the Using and Porting GNU CC manual,
is included with GCC.
See section Forthcoming GNUs, for plans for later releases of GCC.
xxgdb provides an X interface (but it is not
distributed or maintained by the FSF; FTP it
from ftp.x.org in the `/contrib' directory).
GDB uses a standard remote interface to a simulator library which (so far)
has simulators for the
Zilog Z8001/2, Hitachi H8/300, H8/500 & Super-H.
GDB can perform cross-debugging. To say that GDB targets a platform
means that 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. GDB can:
gdbm (LangT, SrcCD, UtilD)
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 need sparse file formats
(unlike its Unix and BSD counterparts).
enscript); a
utility to extract the text from a Postscript language document; a much more
reliable (and faster) Microsoft Windows implementation; support for
Microsoft C/C++ 7.0; drivers for many new printers, including the
SPARCprinter, and for TIFF/F (fax) file format; many more Postscript Level
2 facilities, including most of the color space facilities (but not
patterns), and the ability to switch between Level 1 and Level 2
dynamically. Version 2.6.2 adds a LaserJet 4 driver and several
important bug fixes to version 2.6.1.
Ghostscript executes commands in the Postscript language
by writing
directly to a printer, drawing on an X window, or writing to a file for
later printing (or to a bitmap file that you can manipulate 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 supports
IBM PCs and compatibles with EGA, VGA, or SuperVGA graphics (but please do
not ask the FSF staff any questions about this; we do not use PCs).
ghostview@cs.wisc.edu, has created Ghostview, a
previewer for multi-page files with an X11 user interface. Ghostview
and Ghostscript function as two cooperating programs; Ghostview creates a
viewing window and Ghostscript draws in it.
gmp (LangT, SrcCD)
GNU mp is a library for arbitrary precision arithmetic on signed integers
and rational numbers. It has a rich set of functions with a regular
interface.
gnuplot (SrcCD, UtilT, WdwsD)
gnuplot is an interactive program for plotting mathematical
expressions and data. It handles both curves (2 dimensions) and surfaces
(3 dimensions). Curiously, the program was neither written nor named for
the GNU Project; the name is a coincidence. GNU Emacs' Calc mode uses
gnuplot smoothly.
gperf (LangT, SrcCD)
gperf generates perfect hash tables. There are two
implementations of gperf, written in C and C++. Both produce
hash functions in either C or C++.
spline program replacement; examples of shell
scripts using graph and plot; and a statistics toolkit. Ask
Rich Murphey, Rich@rice.edu, to help test/port it to
anything beyond a SPARCstation.
grep, egrep, and fgrep which
output lines that match inputed patterns.
They are much faster than the traditional Unix versions.
dvi format, and typewriter-like
devices, as well as implementations of
eqn,
nroff,
pic,
refer,
tbl,
troff,
and the
man,
ms,
and
mm macros.
Groff's mm macro package is almost
compatible with the DWB mm macros and has 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.5 or later.
A driver for the LaserJet 4 series of printers is currently in test.
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 so that pic can be integrated with
Texinfo. Questions and bug reports from users who have read the
documentation provided with Groff can be sent to
bug-groff@prep.ai.mit.edu.
gzip (DjgppD, DosCD, LangT, LspEmcT, SrcCD, UtilT)
Some of the contents of our tape and FTP distributions are compressed. We
have software on our tapes and FTP sites to uncompress these files. Due to
patent troubles with compress, we have switched to another
compression program, gzip. (Prohibitions on programming like this
are fought by the League for Programming Freedom, see section What Is the LPF?, for details.) 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 (DjgppD, DosCD, SrcCD, UtilT)
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.
Like any truly useful program, hello contains a built-in mail
reader.
hp2xx (SrcCD, UtilT)
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 and 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).
indent (DjgppD, DosCD, SrcCD, UtilD, UtilT)
GNU indent is a revision of the BSD version. By default, it formats
C source according to the GNU coding standards. The BSD default, K&R and
other formats are available as options. It is also possible to define your
own format.
GNU indent is more robust and provides more functionality than other
versions, e.g., it handles C++ comments.
Aubrey Jaffer 84 Pleasant Street Wakefield, MA 01880-1846 USA
less (SrcCD, UtilD, UtilT)
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.
m4 (DjgppD, DosCD, SrcCD, UtilD, UtilT)
GNU m4 is an implementation of the traditional Unix macro processor.
It is mostly SVR4 compatible, although it has some extensions (for example,
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, DjgppD, DosCD, LangT, LspEmcT, SrcCD, UtilD, UtilT)
GNU make supports POSIX 1003.2 and has all but a few obscure
features of the BSD and System V versions of make, as well as many
of our own extensions. GNU extensions include long options, parallel
compilation, flexible implicit pattern rules, conditional execution and
powerful text manipulation functions. Recent versions have improved error
reporting and added support for the popular `+=' syntax to append
more text to a variable's definition. Texinfo source for the Make
Manual comes with the program. See section GNU Documentation.
GNU make is on several of our tapes because some system 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.
DJ Delorie has ported GNU make to MS-DOS using the GO32 extender.
MS-DOS binaries for make are available with the DJGPP
distribution.
nvi (SrcCD, UtilT)
nvi is a free implementation of the vi/ex Unix editor.
It has most of the functionality of the original vi/ex,
except "open" mode & the lisp option, which will be added.
Enhancements over vi/ex include split screens with multiple
buffers, handling 8-bit data, infinite file & line lengths, tag stacks,
infinite undo & extended regular expressions. It runs under GNU/Linux,
BSD, NetBSD, FreeBSD, BSDI, AIX, HP-UX, DGUX, IRIX, PSF, PTX, Solaris,
SunOS, Ultrix, Unixware & should port easily to many other systems.
libobjects) is a library of
general-purpose, non-graphical Objective-C objects written by R.
Andrew McCallum. It includes collection objects for maintaining groups
of objects and C types, streams for I/O to various destinations, coders
for formatting objects and C types to streams, ports for network packet
transmission, distributed objects (remote object messaging),
pseudo-random number generators, and time handling facilities. It is
known to work on i386, i486, Pentium. m68k, SPARC, MIPS, & RS6000.
Contact the author at `mccallum@gnu.ai.mit.edu'.
OBST (LangT, 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.
bug-octave@che.utexas.edu.
Source is included for a 150+ page Texinfo manual, which is not yet
published by the FSF.
p2c (LangT, SrcCD)
p2c is a Pascal-to-C translator written by Dave Gillespie. It
recognizes many Pascal dialects including Turbo, HP, VAX, and ISO, and
produces readable, maintainable, portable C.
patch (DjgppD, DosCD, SrcCD, UtilT)
patch is our version of Larry Wall's program to take diff's
output and apply those differences to an original file to generate the
modified version.
perl (LangT, SrcCD)
Larry Wall's perl combines the features and capabilities of
sed, awk, sh and C, as well as interfaces to the Unix
system calls and many C library routines.
ptx (SrcCD, UtilD, UtilT)
GNU ptx is our version of the traditional permuted index
generator. It handles multiple input files at once, produces TeX
compatible output, & outputs readable KWIC (KeyWords In Context)
indexes.
It does not yet handle input files that do not fit in memory all at
once.
rc (SrcCD, UtilT)
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.
diff, RCS can
handle binary files (executables, object files, 8-bit data, etc).
Also see the item about CVS in this section.
recode (SrcCD, UtilT)
GNU recode converts files between character sets and usages.
When exact transliterations are not possible, it may get rid of the
offending characters or fall back on approximations. This program
recognizes or produces nearly 150 different character sets and is able to
transliterate files between almost any pair. Most RFC 1345 character
sets are supported.
rx,
comes with sed; it has the potential to be faster than
regex in most cases, but still needs work.
screen (SrcCD, UtilT)
screen is a terminal multiplexer that runs several separate
"screens" (ttys) on a single physical character-based terminal. Each
virtual terminal emulates a DEC VT100 plus several ANSI X3.64 and ISO 2022
functions. Arbitrary keyboard input translation is also supported.
screen sessions can be detached and resumed later on a
different terminal type.
sed (DjgppD, DosCD, SrcCD, UtilD, UtilT)
sed is a stream-oriented version of ed. GNU sed
comes with the rx library, a faster version of regex
(see section Forthcoming GNUs).
shar makes so-called shell archives out of many files, preparing
them for transmission by electronic mail services, while unshar
helps unpack these shell archives after reception. uuencode prepares a
file for transmission over an electronic channel which ignores or otherwise
mangles the high order bit of bytes, while uudecode does the
converse transformation.
basename,
date,
dirname,
echo,
env,
expr,
false,
groups,
hostname,
id,
logname,
nice,
nohup,
pathchk,
printenv,
printf,
pwd,
sleep,
stty,
su,
tee,
test,
true,
tty,
uname,
users,
who,
whoami,
and
yes.
gso, a
function, a CPU to generate code for, and how many instructions you can
accept. Its application in GCC is described in the ACM SIGPLAN
PLDI'92 proceedings.
Superopt supports: SPARC, m68k, m68020, m88k, IBM
RS/6000, AMD 29000, Intel 80x86, Pyramid, DEC Alpha, & HP--PA.
tar (SrcCD, UtilT)
GNU tar includes multivolume support, the ability to archive sparse
files, automatic archive compression/decompression, remote archives and
special features that allow tar to be used for incremental and full
backups. Unfortunately, GNU tar implements an early draft of the
POSIX 1003.1 ustar standard which is different from the final
standard. Adding support for the new changes in a backward-compatible
fashion is not trivial.
web2c TeX package, the sources for which
are available via anonymous ftp; retrieval instructions are in
`pub/tex/unixtex.ftp' on ftp.cs.umb.edu. If you receive any
installation support from the University of Washington, please consider
sending them a donation.
To order a full distribution written in tar on either a
1/4inch 4-track QIC-24 cartridge or a 4mm DAT cartridge, send
$210.00 to:
Pierre A. MacKay
Department of Classics
DH-10, Denny Hall 218
University of Washington
Seattle, WA 98195
USA
Electronic-Mail: mackay@cs.washington.edu
Telephone: +1-206-543-2268
Please make checks payable to the University of Washington.
Do not specify any other payee. That causes accounting difficulties.
Checks must be in U.S. dollars, drawn on a U.S. bank.
Prepaid orders are the only orders that can now be handled.
Overseas sites: please add to the base cost $20.00 for shipment via
air parcel post, or $30.00 for shipment via courier.
Please check with the above for current prices and formats.
makeinfo,
info,
texi2dvi,
texindex,
tex2patch,
and
fixfonts.
Source for the Texinfo Manual is included. See section GNU Documentation.
cat,
cksum,
comm,
csplit,
cut,
expand,
fmt,
fold,
head,
join,
nl,
od,
paste,
pr,
sort,
split,
sum,
tac,
tail,
tr,
unexpand,
uniq,
and
wc.
time (SrcCD, UtilT)
time is used to report statistics (usually from a shell) about the
amount of user, system and real time used by a process. On some
systems it also reports memory usage, page faults, and other statistics.
tput (SrcCD, UtilT)
tput is a portable way for shell scripts to use special terminal
capabilities. Our tput uses the Termcap database, instead of
Terminfo as most others do.
f,
g and v (in all window and packet sizes),
G,
t,
e,
Zmodem and two new bidirectional
(i and j) protocols. If you have a
Berkeley sockets library, it can make TCP connections. If you have TLI
libraries, it can make TLI connections. Source is included for a Texinfo
manual, which is not yet published by the FSF.
wdiff (DjgppD, DosCD, SrcCD, UtilT)
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.
Ygl (SrcCD, UtilT)
Ygl emulates SGI's GL (Graphics Language) library under X11. It
runs under GNU/Linux with XFree, AIX 3.2, ConvexOS, HP-UX 7.0/8.0/9.0, SunOS
and many others.
Here is a list of what package each GNU program or library is in. You can anonymously FTP a full list in the file `/pub/gnu/ProgramIndex' from a GNU FTP host (see section How to Get GNU Software for a list).
* a2p perl * a2x xopt * ac bsd44 * accton bsd44 * acl bsd44 * acm acm * acms acm * addftinfo Groff * adventure bsd44 * afm2tfm TeX * amd bsd44 * ansitape bsd44 * AnswerGarden xopt * apply bsd44 * appres xreq * apropos bsd44 * ar Binutils * arithmetic bsd44 * arp bsd44 * atc bsd44 * autoconf Autoconf * autoheader Autoconf * autoreconf Autoconf * autoscan Autoconf * autoupdate Autoconf * auto_box xopt * auto_box xreq * b2m Emacs * backgammon bsd44 * bad144 bsd44 * badsect bsd44 * banner bsd44 * basename Shellutils * bash BASH * battlestar bsd44 * bc bc * bcd bsd44 * bdes bsd44 * bdftops Ghostscript * beach_ball xopt * beach_ball xreq * beach_ball2 xopt * bibtex TeX * biff bsd44 * bison Bison * bitmap xreq * boggle bsd44 * bpltobzr Fontutils * bugfiler bsd44 * build ispell * bzrto Fontutils * c++ GCC * c++filt Binutils * c2ph perl * ca100 xopt * caeser bsd44 * cal bsd44 * calendar bsd44 * canfield bsd44 * cat Textutils * cbars wdiff * cc GCC * cc1 GCC * cc1obj GCC * cc1plus GCC * cccp GCC * charspace Fontutils * checknr bsd44 * chess bsd44 * chflags bsd44 * chgrp Fileutils * ching bsd44 * chmod Fileutils * chown Fileutils * chpass bsd44 * chroot bsd44 * ci RCS * cksum Textutils * clisp CLISP * clri bsd44 * cmail xboard * cmmf TeX * cmodext xopt * cmp Diffutils * co RCS * col bsd44 * colcrt bsd44 * colrm bsd44 * column bsd44 * comm Textutils * compress bsd44 * comsat bsd44 * connectd bsd44 * cp Fileutils * cpicker xopt * cpio cpio * cpp GCC * cppstdin perl * cribbage bsd44 * crock xopt * csh bsd44 * csplit Textutils * ctags Emacs * ctwm xopt * cu UUCP * cut Textutils * cvs CVS * cvscheck CVS * cvtmail Emacs * cxterm xopt * d Fileutils * date Shellutils * dc bc * dd Fileutils * delatex TeX * demangle Binutils * descend CVS * detex TeX * df Fileutils * diff Diffutils * diff3 Diffutils * digest-doc Emacs * dipress bsd44 * dir Fileutils * dirname Shellutils * dish xopt * disklabel bsd44 * diskpart bsd44 * dld dld * dm bsd44 * dmesg bsd44 * doschk doschk * dox xopt * du Fileutils * dump bsd44 * dumpfs bsd44 * dvi2tty TeX * dvicopy TeX * dvips TeX * dvitype TeX * ecc ecc * echo Shellutils * ed ed * edit-pr GNATS * editres xreq * edquota bsd44 * eeprom bsd44 * egrep grep * emacs Emacs * emacsclient Emacs * emacsserver Emacs * emacstool Emacs * emu xopt * env Shellutils * eqn Groff * error bsd44 * es es * esdebug es * etags Emacs * ex nvi * expand Textutils * expect DejaGnu * expr Shellutils * exterm xopt * f2c f2c * factor bsd44 * fakemail Emacs * false Shellutils * fastboot bsd44 * fax2ps FlexFAX * faxalter FlexFAX * faxanswer FlexFAX * faxcover FlexFAX * faxd FlexFAX * faxd.recv FlexFAX * faxmail FlexFAX * faxquit FlexFAX * faxrcvd FlexFAX * faxrm FlexFAX * faxstat FlexFAX * fc f2c * fdraw xopt * fgrep grep * file bsd44 * find Findutils * find2perl perl * finger finger * fingerd finger * fish bsd44 * fixfonts Texinfo * fixinc.svr4 GCC * fixincludes GCC * flex flex * fmt bsd44 * fold Textutils * font2c Ghostscript * fontconvert Fontutils * forth Tile Forth * forthicon Tile Forth * forthtool Tile Forth * fortune bsd44 * fpr bsd44 * freq ispell * freqtbl ispell * from bsd44 * fsck bsd44 * fsplit bsd44 * fstat bsd44 * ftp bsd44 * ftpd bsd44 * g++ GCC * gas Binutils * gawk Gawk * gcc GCC * gcore bsd44 * gdb GDB * genclass libg++ * getty bsd44 * gftodvi TeX * gftopk TeX * gftype TeX * ghostview Ghostview * gnats GNATS * gnuchess Chess * gnuchessc Chess * gnuchessn Chess * gnuchessr Chess * gnuchessx Chess * gnupdisp Shogi * gnuplot gnuplot * gnuplot_x11 gnuplot * gnushogi Shogi * gnushogir Shogi * gnushogix Shogi * go GnuGo * gpc xopt * gpc xreq * gperf gperf * gperf libg++ * gprof Binutils * graph Graphics * grep grep * grodvi Groff * groff Groff * grops Groff * grotty Groff * groups Shellutils * gs Ghostscript * gsbj Ghostscript * gsdj Ghostscript * gslj Ghostscript * gslp Ghostscript * gsnd Ghostscript * gsrenderfont Fontutils * gunzip gzip * gwm xopt * gzexe gzip * gzip gzip * h2ph perl * h2pl perl * hack bsd44 * hangman bsd44 * head Textutils * hello hello * hexdump bsd44 * hexl Emacs * hostname Shellutils * hp2xx hp2xx * hterm xopt * i18nOlwmV2 xopt * i2mif xopt * ico xopt * ico xreq * id Shellutils * ident RCS * ifconfig bsd44 * ifnames Autoconf * ImageMagick xopt * imageto Fontutils * iman xopt * imgrotate Fontutils * indent indent * indxbib Groff * inetd bsd44 * info Texinfo * inimf TeX * init bsd44 * initex TeX * inn bsd44 * install Fileutils * iostat bsd44 * ispell ispell * ixterm xopt * ixx xopt * join Textutils * jot bsd44 * jove bsd44 * kdestroy bsd44 * kdump bsd44 * kermit bsd44 * kgames xopt * kgmon bsd44 * kill bsd44 * kinit bsd44 * kinput2 xopt * klist bsd44 * kpasswdd bsd44 * ksrvtgt bsd44 * kterm xopt * ktrace bsd44 * lam bsd44 * larn bsd44 * lasergnu gnuplot * last bsd44 * lastcomm bsd44 * latex TeX * lclock xopt * ld Binutils * leave bsd44 * less less * lesskey less * libbfd.a Binutils * libbfd.a GAS * libbfd.a GDB * libbzr.a Fontutils * libc.a C Library * libcompat.a bsd44 * libcurses.a bsd44 * libcurses.a nvi * libedit.a bsd44 * libF77.a f2c * libg++.a libg++ * libgdbm.a gdbm * libgf.a Fontutils * libgmp.a gmp * libI77.a f2c * libkvm.a bsd44 * libm.a bsd44 * libnihcl.a NIHCL * libnihclmi.a NIHCL * libnihclvec.a NIHCL * libnls.a xreq * liboctave.a Octave * liboldX.a xreq * libpbm.a Fontutils * libPEXt.a xopt * libpk.a Fontutils * libresolv.a bsd44 * librpc.a bsd44 * libtcl.a DejaGnu * libtelnet.a bsd44 * libterm.a bsd44 * libtermcap.a Termcap * libtfm.a Fontutils * libutil.a bsd44 * libWc.a xopt * libwidgets.a Fontutils * libX.a xreq * libXau.a xreq * libXaw.a xreq * libXcp.a xopt * libXcu.a xopt * libXdmcp.a xreq * libXmp.a xopt * libXmu.a xreq * libXO.a xopt * libXop.a xopt * libXp.a xopt * libXpex.a xopt * libXt.a xopt * libXt.a xreq * libXwchar.a xopt * liby.a bsd44 * libYgl.a Ygl * limn Fontutils * listres xopt * listres xreq * lkbib Groff * ln Fileutils * locate Findutils * lock bsd44 * logger bsd44 * login bsd44 * logname Shellutils * look ispell * lookbib Groff * lorder bsd44 * lpr bsd44 * ls Fileutils * m4 m4 * mail bsd44 * make Make * make-docfile Emacs * make-path Emacs * makeindex TeX * makeinfo Texinfo * MakeTeXPK TeX * man bsd44 * man-macros Groff * mattrib mtools * maze xopt * maze xreq * mazewar xopt * mcd mtools * mcopy mtools * mdel mtools * mdir mtools * me-macros Groff * merge RCS * mesg bsd44 * mf TeX * mformat mtools * mft TeX * mgdiff xopt * mh bsd44 * mille bsd44 * mkdep bsd44 * mkdir Fileutils * mkfifo Fileutils * mklocale bsd44 * mkmanifest mtools * mkmf bsd44 * mkmodules CVS * mknod Fileutils * mkstr bsd44 * mlabel mtools * mm-macros Groff * mmd mtools * monop bsd44 * more bsd44 * morse bsd44 * mount bsd44 * mountd bsd44 * movemail Emacs * mprof bsd44 * mrd mtools * mread mtools * mren mtools * ms-macros Groff * msgs bsd44 * mt cpio * mterm xopt * mtree bsd44 * mtype mtools * mule MULE * muncher xopt * mv Fileutils * mvdir Fileutils * mwrite mtools * nethack Nethack * netstat bsd44 * newfs bsd44 * nfsd bsd44 * nfsiod bsd44 * nfsstat bsd44 * nice Shellutils * nl Textutils * nlmconv Binutils * nm Binutils * nohup Shellutils * notify FlexFAX * nroff Groff * number bsd44 * objc GCC * objcopy Binutils * objdump Binutils * objective-c GCC * obst-boot OBST * obst-CC OBST * obst-cct OBST * obst-cgc OBST * obst-cmp OBST * obst-cnt OBST * obst-cpcnt OBST * obst-csz OBST * obst-dir OBST * obst-dmp OBST * obst-gen OBST * obst-gsh OBST * obst-init OBST * obst-scp OBST * obst-sil OBST * obst-stf OBST * oclock xreq * octave Octave * od Textutils * oleo Oleo * ora-examples xopt * p2c p2c * pagesize bsd44 * palette xopt * pascal bsd44 * passwd bsd44 * paste Textutils * patch patch * patgen TeX * pathalias bsd44 * pathchk Shellutils * pax bsd44 * pbmplus xopt * perl perl * pfbtops Groff * phantasia bsd44 * pic Groff * pig bsd44 * ping bsd44 * pixedit xopt * pixmap xopt * pktogf TeX * pktype TeX * plaid xopt * plot2fig Graphics * plot2plot Graphics * plot2ps Graphics * plot2tek Graphics * pltotf TeX * pollrcvd FlexFAX * pom bsd44 * pooltype TeX * portmap bsd44 * ppt bsd44 * pr Textutils * pr-addr GNATS * pr-edit GNATS * primes bsd44 * printenv Shellutils * printf Shellutils * protoize GCC * ps bsd44 * ps2ascii Ghostscript * ps2epsi Ghostscript * ps2fax FlexFAX * psbb Groff * pstat bsd44 * psycho xopt * ptx ptx * pubdic+ xopt * puzzle xopt * puzzle xreq * pwd Shellutils * pyramid xopt * query-pr GNATS * quiz bsd44 * quot bsd44 * quota bsd44 * quotacheck bsd44 * quotaon bsd44 * rain bsd44 * random bsd44 * ranlib Binutils * rbootd bsd44 * rc rc * rcp bsd44 * rcs RCS * rcs-to-cvs CVS * rcs2log Emacs * rcsdiff RCS * rcsfreeze RCS * rcsmerge RCS * rdist bsd44 * reboot bsd44 * recode recode * recvstats FlexFAX * refer Groff * renice bsd44 * repquota bsd44 * restore bsd44 * rev bsd44 * rexecd bsd44 * rlog RCS * rlogin bsd44 * rlogind bsd44 * rm Fileutils * rmail bsd44 * rmdir Fileutils * rmt cpio * rmt tar * robots bsd44 * rogue bsd44 * route bsd44 * routed bsd44 * rr xopt * rs bsd44 * rsh bsd44 * rshd bsd44 * runtest DejaGnu * runtest.exp DejaGnu * ruptime bsd44 * rwho bsd44 * rwhod bsd44 * s2p perl * sail bsd44 * savecore bsd44 * sc bsd44 * sccs bsd44 * sccs2rcs CVS * scdisp xopt * screen screen * script bsd44 * scsiformat bsd44 * sctext xopt * sdiff Diffutils * sed sed * send-pr GNATS * sendfax FlexFAX * sendmail bsd44 * sgi2fax FlexFAX * sh bsd44 * shar Sharutils * shinbun xopt * shogi Shogi * showfont xopt * showmount bsd44 * shutdown bsd44 * size Binutils * sj3 xopt * sjxa xopt * slattach bsd44 * sleep Shellutils * sliplogin bsd44 * snake bsd44 * snftobdf xopt * soelim Groff * sort Textutils * sos2obst OBST * spider xopt * split Textutils * startslip bsd44 * stf OBST * strings Binutils * strip Binutils * stty Shellutils * su Shellutils * sum Textutils * superopt Superopt * swapon bsd44 * sync bsd44 * sysctl bsd44 * syslogd bsd44 * systat bsd44 * tac Textutils * tail Textutils * taintperl perl * talk bsd44 * talkd bsd44 * tangle TeX * tar tar * tbl Groff * tcl DejaGnu * tclsh DejaGnu * tcopy bsd44 * tcp Emacs * tee Shellutils * tek2plot Graphics * telnet bsd44 * telnetd bsd44 * test Shellutils * test-g++ DejaGnu * test-tool DejaGnu * tetris bsd44 * tex TeX * tex3patch Texinfo * texi2dvi Texinfo * texindex Texinfo * texspell TeX * textfmt FlexFAX * tfmtodit Groff * tftopl TeX * tftp bsd44 * tftpd bsd44 * tgrind TeX * time time * timed bsd44 * timer Emacs * timex xopt * tip bsd44 * tkpostage xopt * tn3270 bsd44 * touch Fileutils * tput tput * tr Textutils * traceroute bsd44 * transcript FlexFAX * transfig xopt * trek bsd44 * trn3 bsd44 * troff Groff * trpt bsd44 * trsp bsd44 * true Shellutils * tset bsd44 * tsort bsd44 * tty Shellutils * tunefs bsd44 * tvtwm xopt * twm xreq * ul bsd44 * umount bsd44 * uname Shellutils * uncompress gzip * unexpand Textutils * unifdef bsd44 * uniq Textutils * unprotoize GCC * unshar Sharutils * unvis bsd44 * update bsd44 * updatedb Findutils * users Shellutils * uuchk UUCP * uucico UUCP * uuconv UUCP * uucp UUCP * uucpd bsd44 * uudecode Sharutils * uudir UUCP * uuencode Sharutils * uulog UUCP * uuname UUCP * uupick UUCP * uurate UUCP * uusched UUCP * uustat UUCP * uuto UUCP * uux UUCP * uuxqt UUCP * v Fileutils * vacation bsd44 * vandal xopt * vcdiff Emacs * vdir Fileutils * vftovp TeX * vgrind bsd44 * vi nvi * viewres xopt * viewres xreq * vine xopt * vipw bsd44 * virmf TeX * virtex TeX * vis bsd44 * vmstat bsd44 * vptovf TeX * w bsd44 * wakeup Emacs * wall bsd44 * wargames bsd44 * wc Textutils * wdiff wdiff * weave TeX * what bsd44 * whatis bsd44 * whereis bsd44 * who Shellutils * whoami Shellutils * whois bsd44 * window bsd44 * winterp xopt * wish DejaGn