我々のソフトウェア全てが anonymous FTPで入手可能である。 section GNUソフトウェアの入手方法。さらに、様々な媒体に入った ソフトウェアや、製本されたマニュアルを提供している。
あらゆるバグ報告を歓迎しており、それぞれ適切な電子的なメイリング・リストへ 宛てていただきたい(see section フリー・ソフトウェアのサポート)。
各媒体の内容を記述している欄の、プログラム名の後ろに付くバージョン番号は、 この小冊子の発行時点のものである。配布テープを注文する際には、プログラム が更新されている可能性があるのでバージョンが上がっていることがある。
相互参照の略語を次に示す。
GNUソフトウェアの構築方法
現在、GNU ソフトウェアをコンパイルし、構築するための汎用のシステムとして、
autoconf プログラムを使っている。全ての GNU ソフトウェアを、マシ
ン・タイプとシステム・タイプに対して同じ命名方法で構築することができる。
これにより、 全ての GNU ソフトウェアをインストールする際に、(訳注: GNU
ソフトウェアごとに固有の引数を与えるのではなく) マシン・タイプとシステム・
タイプを同じ引数名で与えて構築できるようになるだろう。
この構築方法を用いると、1 つのディレクトリで複数の GNU パッケージを単一 コマンドで作成できるようにもなる。GNUシステムが完成した暁には、GNU パッ ケージを個々に構築する必要がなくなり、システム全体を一度に構築して組み立 てることが可能になる。
この構築方法では、ホスト・システムとターゲット・システムを記述するだけで クロスコンパイル・ツールを容易に作成および組み込むことができる。
現在配布可能なGNUソフトウェア
(新しい機能や近い将来計画されているプログラムについては、 section GNUプログラムの今後の展開)
acm (SrcCD、UtilT)
acm は空中戦のシミュレーション・プログラムであり、 X Window System 下で
動作する LAN 指向の複数プレーヤーに対応している。プレーヤーは、熱探査ミ
サイルや機関銃を使って、もう 1 人のプレーヤーと空対空で交戦する。最終的
には、これをさらに汎用目的で使えるようなフライト・シミュレータにしたい。
m4 のマクロ呼び出し形式で列挙されてい
る。Autoconf は作業中に GNU m4 を必要とするが、Autoconf で生成さ
れた構築スクリプトには GNU m4 は必要ない。
ほとんどの GNU プログラムが、現在この Autoconf で生成された構築スクリプ
トを使っている。
shと互換性があ
り、csh と ksh の両方に拡張を施したものである。ジョブ制御
機能や、csh スタイルのコマンド履歴、readline ライブラリを介し
た (Emacs や vi モードが組み込まれており、キーの再割り当てが可能
である) コマンド行編集機能が備わっている。BASH は、POSIX 1003.2 のシェル
仕様に従っている。
bc (SrcCD、UtilT)
bc は会話型の任意精度の計算言語である。GNU bc は POSIX
1003.2 規格のドラフトに基づいて作られたもので、変数名に 2 文字以上の指定
が可能で、else 文があり、全て網羅した論理式、等の拡張が施されてい
る。GNU bc は、異なる dcプログラムを要求しない。
ld や GDB
など) から異なる形式のオブジェクト・ファイルを透過的に扱えるようになる。
BFD では移植性の高いインタフェースを提供しているので、BFD に個々の形式の
詳細を実際に与えるだけでよい。このような設計により、BFD を使っている全て
のプログラムが COFF や ELF、OSF-Rose といった形式のサポートが可能になる。
BFD には Texinfo 形式のドキュメントも含まれている(製本された物はまだ出版
していない)。
BFD はまだ完全に安定していないので単独で配布していないが、それを使ってい
るパッケージには入れている。
ar、
c++filt、
demangle、
gprof、
ld、
nlmconv、
nm、
objcopy、
objdump、
ranlib、
size、
strings、
strip が入っている。
Binutils のバージョン 2 は、BFD ライブラリを採用するために完全に書き換え
られた。GNU リンカ ld は、多重定義のシンボルや未定義の参照に対し
てソースの行番号を含むエラー・メッセージを表示する、という GNU リンカな
らではの特徴を備えている。AT&T のリンカ・コマンド言語のスーパーサブセッ
トを解釈し、メモリに配置されるセグメントの場所を全体にわたって一般制御す
る。nlmconv は、オブジェクト・ファイルを Novel NetWare でロード可
能なモジュールに変換する。 objdump プログラムは、a29k、ALPHA、
H8/300やH8/500、HP--PA、i386、i960、m68k、m88k、MIPS、SH、SPARC、Z8000プ
ロセッサ用のコードを逆アセンブルしたり、BFDで解釈可能なあらゆるファイル
の形式のシンボルや再配置のデータを表示することが可能である。
yacc と上位互換性がある構文解析を生成する代替ソフトウェ
アである。Bison Manual とリファレンス・カードの Texinfo ソース・
テキスト・ファイルも入っている。See section GNUドキュメンテーション。
malloc の高速なバージョンを作成し、GNU 正規表現関数(regex) は現在、
POSIX 1003.2 の規格をほとんど満たしている。
GNU stdio では、2〜3個 の C 関数を新たに記述すれば自分の新しいス
トリームを定義することができる。fmemopen 関数は、文字列に対してス
トリームをオープンするためにこの方法を採用しており、必要に応じて拡張が可
能である。自分の書いた C 言語の関数を使って自分用のprintf 形式を
定義することも可能である。例えば、ユーザからの入力に対してフォーマット文
字を用いて安全に処理することもできる。例えば、printf のような関数
を他の言語向けに用意する、等である。拡張 getopt 関数は、長いオプ
ション名のオプションの解析のために、多くの GNU ユーティリティ内で既に用
いられている。
バージョンは 1.08 をリリースしたばかりで、Sun RPCや mmapなどのサ
ポートと、互換対象である伝統的な Unix の関数の種類を追加した。動作するマ
シンは、Sun-3 (SunOS 4.1)、Sun-4 (SunOS 4.1 または Solaris 2)、HP
9000/300 (4.3BSD)、SONY News 800 (NewsOS 3 または 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) である。
GNU C Library Reference Manual の Texinfo 形式のテキスト・ソース・
ファイルも入っているが、その内容はまだ更新していく必要がある。
gnuplot へ出力する。共に提供される
Calc Manual とリファレンス・カードは入門と詳細のいずれにも対応し
ている。See section GNUドキュメンテーション。
Stuart Cracraft
25682 Cresta Loma
Laguna Niguel, CA 92677
USA
電話番号: +1-714-347-8107
電子メイル: cracraft@ai.mit.edu
prep.ai.mit.edu マシンの
`/pub/gnu/gcl.README' ファイルを FTP せよ。) ソース・プログラム
は ftp.cli.com から入手可能。詳細は、
schelter@math.utexas.edu に問い合わせのこと。
cpio (SrcCD、UtilD、UtilT)
cpio は、SVR4 cpioの全ての機能を備えた代替のアーカイブ・プ
ログラムであり、POSIX 1003.1 ustar 規格に準拠している。mt
は、磁気テープを適当な場所に置くプログラムであり、cpio と共に配布
されている。
office@usenix.org へ問い
合わせのこと。
dc (SrcCD、UtilT)
dc は RPN 電卓である。GNU bc は、実行のために別個の
dc プログラムを必要としない。このバージョンのdcは、最終的
には GNU bc パッケージとマージされる予定である。
expect と Tcl が付いてくる。Tcl とは、組み込み型のス
クリプト言語である。FSF では、いつか Tcl をもっと簡素なプログラミング言語に
置き換えたいと思っている。
diff は、数種類の柔軟性のある形式で、行ごとの変更点を表示しな
がらファイルを比較する。昔からある Unix のそれらと比較するとかなり高速に
動作する。この「Diffutils」 パッケージには、diff、diff3、
sdiff、cmpが入っている。
最近、Diffutils に施された改良点として、diff のために新しく導入さ
れたヒューリスティックがある。これは、たくさんの差分がある大きな入力ファ
イルを比較する時に大幅に時間を短縮しながらも、常に比較的小さな出力を行う
ものである。新しい diff のオプションとして、全体にわたって詳細な
制御を出力形式に与えるものがある。例えば、C言語以外のプログラミング言語
向けのif-then-else 形式の生成、等である。メッセージの言い回しや「ホワイ
ト・スペース」の定義を、POSIX.2 規格 (ISO/IEC 9945-2:1993) に準拠させる
べく改訂した。
flex、GAS、GNUバイナリ・ユーティリテイ
を移植したものも入っている。完全なソース・コードが提供される。DJGPP のイ
ンストールには、ハードディスクの空き容量として最低 5M バイト、利用するに
は RAM が 512K バイトが必要である。SVGA (1024x768 迄)/XMS/ VDISKのメモリ
割り当て、himem.sys、VCPI (QEMM、DESQview、386MAXなど)、DPMI
(Windows 3.x、OS/2、QEMM、QDPMIなど)をサポートする。FSF では、
section DJGPPフロッピー・ディスクおよび
section コンパイラ・ツール・バイナリCD-ROMに入
れて提供している。あるいは、oak.oakland.edu マシン(または別の
SimTelのサイト) の`/pub/msdos/djgpp' ファイルが FTP にて入手可能で
ある。あるいは、DJGPP ユーザのためのメイリング・リストに参加するには、
djgpp-request@sun.soe.clarkson.edu へ問い合わせのこと。
dld (LangT、SrcCD)
dld は、W. Wilson Ho が作成したダンナミック・リンカである。
dld ライブラリを使うプログラムは、そのバイナリの実行中に、動的に
オブジェクト・ファイルをロードできるようになる。現在サポートされているマ
シンは、VAX (Ultrix)、Sun 3 (SunOS 3.4 と 4.0)、SPARC (SunOS 4.0)、
Sequent Symmetry (Dynix)、Atari STである。
doschk (SrcCD、UtilT)
このプログラムの意図は、ユーティリティを提供しソフトウェア開発者を支援す
ることである。14 文字までのファイル名を扱う System V のプラットフォーム
上向けと、11 文字 (8+3) までのファイル名を扱っている MS-DOS 上で異なるファ
イル名を確実に生成する。
ecc (SrcCD、UtilT)
eccは、Reed-Solomon アルゴリズムを用いたエラー訂正チェック・プロ
グラムである。255バイトのブロック単位で3バイト・エラーを訂正し、厳密なエ
ラーを検出することができる。詳細は、paulf@Stanford.EDU へ問い合
わせのこと。
ed (SrcCD、UtilT)
ed は標準のテキスト・エディタである。
es (SrcCD、UtilT)
esは rc を基にした拡張性に富んだシェルであるが、1階関数、構文
スコープ、割り込みシステム、豊富な戻り値 (つまり、関数が数値以外の値を返す
ことができる) を含む多くの特徴が備わっている。rc (訳注: Bell研の
Plan 9 に採用されている標準のシェル) のように、特に、引用規則がC言語や
Bourne シェルよりもずっと簡素なので、会話型での利用やスクリプトの作成の両方
に非常に便利である。
f2c (LangT、SrcCD)
f2c は、Fortran-77 のソース・ファイルを C 言語または C++ 言語
へ変換する。そうすれば、GCCでコンパイルすることができる。バグ修正は、
netlib.att.com マシンの `/netlib/f2c/changes.Z' ファイルをFTP
で、あるいは netlib@research.att.com へメイルを出すと、入手すること
ができる。GNU Fortran に関する情報は、see section GNUプログラムの今後の展開。
bug-fax@prep.ai.mit.edu へ問い合わせのこと。
chgrp、
chmod、
chown、
cp、
dd、
df、
dir、
du、
install、
ln、
ls、
mkdir、
mkfifo、
mknod、
mv、
mvdir、
rm、
rmdir、
touch、
vdir。
これらの一部のみが section ユーティリティ・セットのフロッピー・ディスク、
に入っている。
find (SrcCD、UtilD、UtilT)
find は、会話時にあるいはシェル・スクリプト内で頻繁に用いられるコマ
ンドである。ある基準に一致したファイルを検索し、任意の操作を行なうような場
合に使用される。また、このパッケージには、コマンドをファイルのリストに適用
する xargs や、パターンに一致するファイル名のためのデータベースをス
キャンする locate も入っている。
flex (LangT、SrcCD、UtilD)
flex は、Unix の lex (字句解析生成プログラム) の代替である。
flex は、Lawrence Berkeley 研究所の Vern Paxson が作成し、lex
と比べて非常に効率の良い字句解析プログラムを生成する。Flex Manual と
リファレンス・カードのテキスト・ソース・ファイルも入っている。
bpltobzr、
bzrto、
charspace、
fontconvert、
gsrenderfont、
imageto、
imgrotate、
limn、
xbfe。
awk と上位互換
である。また、他の awk の実装には見られない便利な拡張がいくつか施
されている。Texinfo 形式の GAWK Manual のテキスト・ソース・ファイ
ルは、ソフトウェアと共に付いてくる。See section GNUドキュメンテーション。
object の派生物である Objective-C クラス
は一切含まない)。 cfront (AT&T コンパイラ) は ANSI 規格とは異なって
きているので、G++ では、cfront ではなく、発展しつつある ASNI 規
格にできる限りあわせている。
GNU C コンパイラはかなり移植性の良い最適化プログラムで、次の機能を備えて
いる。
レジスタの自動割り当て、
共通部分式の削除、
ループ内の不変式のループ外への移動、
誘導変数の最適化、
常数の伝搬や複製の伝搬、
スタックに積んだ関数引数の遅延回復、
末尾再帰関数の削除、
インライン関数の展開とフレーム・ポインタの削除の統合、
命令スケジューリング、
ループの展開、
遅延スロットの活用、
末端関数の最適化、
定数との乗算最適化、
基本ブロック間での多少の共通部分式の削除 (CSE)(命令スケジューリングや遅
延スロットの活用は全てのマシン記述に用意されているわけではないが)、
命令に対する属性の割り当て機能、
ターゲット・マシンの仕様を記述したファイルから自動的に生成される様々な局
所最適化コード、
等である。
GCC 2 では、64 ビット演算のコードも生成可能になっている (long
long 型)。拡張浮動小数点(long double 型)は、68k マシン上ではサポー
トされており、その他のマシンも今後サポートしていく予定である。
GCC は フルセット ANSI C 、古い C、GNU C 拡張言語をサポートしている。GNU
C は、関数の入れ子や、関数をまたがる goto、ラベルのアドレスの取得をサポー
トすべく拡張された。
GCC は、適切なアセンブラがあれば a.out、COFF、ELF、OSF-Roseファイルを生
成することができる。デバッグ情報は、BSD スタブ、COFF、ECOFF、スタブ付き
の ECOFF、DWARF などの形式で生成可能である。
GCCで生成するコードを次に示す。
a29k、 Alpha、 ARM、 Convex cN、Clipper、 Elxsi、 H8300、 HP--PA (1.0 と
1.1) i370、 i386、 i486、 i860、 i960、m68k、 m68020、 m88k、 MIPS、 ns32k、
Pyramid、 ROMP、 RS6000、 SH、 SPARC、SPARClite、 VAX、 we32k。
オペレーティング・システム別に示す。
AIX、 ACIS、 AOS、 BSD、 Clix、 Ctix、DG/UX、 Dynix、 Genix、 HP-UX、 ISC、
Irix、 Linux、 Luna、 LynxOS、 Mach、 Minix、NewsOS、 OSF、 OSF-Rose、
RISCOS、 SCO、 Solaris 2、 SunOS 4、 SysV、 Ultrix、 Unos、VMS.
(Tron 向けの新しい移植と同様、) Alliant や Tahoe、Spur 用の古い(バージョ
ン 1 での)マシン記述は動作しない。しかし、その作業を行ないたい人のために
配布の中にそれらをまだ入れてある。
GCC の構築方法を使うと、クロスコンパイラを作成する場合に、ホスト・マシン
と同じ機種のターゲット・マシン用のコンパイラを作成する場合と同様の手間で
容易に行なうことができる。バージョン 2 では、さらに一般的な関数呼び出し
形式もサポートしている。引数を「参照渡し」にし、スタック上に引数の場所を
予め確保しておくことが可能である。SPARC マシン上の GCC 2 では、構造体の
引数や戻り値で、SPARC の慣習が扱えるようになった。
もはやバージョン 1 の GCC や G++、libg++ の配布や保守は行ってい
ない。
GCC のマニュアル (Using and Porting GNU CC) の Texinfo形式のソー
ス・ファイルはコンパイラと共に提供されている。
GCCの今後のリリース計画については、See section GNUプログラムの今後の展開。
xxgdb では X のインタフェースが提供される (が、FSFによる配布や保
守は行われていない)。ftp.x.org マシンの `/contrib' ディレク
トリから anonymous FTP で入手可能である。
GDBは、シミュレータ・ライブラリに対する標準のリモート・インタフェースを
使っている。(これまでのところ) ライブラリには、Zilog Z8001/2 や Hitachi
H8/300、H8/500、Super-H 用のシミュレータが入っている。
GDB は、クロスデバッグも可能である。GDB での、あるプラットフォームの「ター
ゲット」とは、対象プログラムをそこで実行したり、そのマシンのためにクロス
デバッグできるということを意味する。GDB で与えられたプラットフォームを
「ホスト」にすることができるということは、そこで GDB を作成することが可
能ではあるが、必ずしもデバッグ対象プログラムをデバッグできるとは限らない
ことを意味する。GDB は次に示すマシンをサポートしている。
gdbm (LangT、SrcCD、UtilD)
gdbm ライブラリは、伝統的な dbm と ndbm ライブラリ
の GNU 版代替品である。ハッシングを用いて高速検索が可能なデータベースを
実現する。gdbm は両方の関数形式をサポートしているが、(Unix とは違っ
て) データベースのファイルの中に無駄な空間を作らない。
enscriptのような) テキスト・ファイルの印刷や、Postscript 形式の
文書からテキストを抽出するユーテイリティ、Microsoft Windowsでの信頼性の
かなりの向上と高速化、Microsoft C/C++ 7.0 向けのサポート、
SPARCprinterを含む多くの新機種プリンタ用と TIFF/F (ファクシミリ) ファイ
ル形式のドライバ、色空間機能 (パターンではない) を含むさらに多くの
Postscript レベル2 機能、レベル 1 とレベル 2 との動的な切り替え機能といっ
た改善がなされた。
Ghostscript は、Postscript のコマンドを受け付けてプリンタへの直接出力、X
ウィンドウ上での描画や、プリンタ出力可能なファイルの作成といった機能があ
る。(あるいは、他のグラフィック・プログラムで操作できるようなビットマッ
プ・ファイルを生成することも可能である。)
(Postscript 言語を扱いたくないクライアントのために) C 言語の呼び出し可能
なグラフィック・ライブラリも入っており 、IBM PC や EGA、VGA、SuperVGA グ
ラフィックを使用している IBM PC とその互換製品もサポートしている。(但し、
これについては FSF のスタッフに尋ねないでほしい。我々は PC を使っていな
いし、PC マシンを習得する時間もないからである。)
Ghostscript の今後のリリース計画については、See section GNUプログラムの今後の展開。
ghostview@cs.wisc.edu) は、Ghostscriptの最上位
で動作する Ghostview (複数ページのファイルを扱うプリビュー) を作成した。
Ghostviewは、Ghostscript インタープリタ用の X11 ユーザ・インタフェースを
備えている。Ghostview と Ghostscript は 2 つが協調して動作するプログラム
である。つまり Ghostview は表示ウィンドウを生成し、Ghostscriptはそこに描
画する。「Windows用のGSview」と呼ばれるものは Ghostvivew を、MS-Windows
に移植したものである。このプログラムの今後のリリースに関する情報は
section GNUプログラムの今後の展開。
gmp (LangT、SrcCD)
GNU mp は、任意精度の符号付き整数に関する有理数演算を行なうライブラリで
ある。豊富な関数が用意されており、全て統一されたインタフェースを有してい
る。
gmp の今後のリリースに関する情報はSee section GNUプログラムの今後の展開。
gnuplot (SrcCD、UtilT)
gnuplot は、数式やデータをプロットするための対話型プログラムであ
る。曲線(2次元)と面(3次元)の両方を扱う。念のために、gnuplot プログラムは
GNU プロジェクトで作成したものではなく、名付けたものでもない。単なる偶然
である。
gperf (LangT、SrcCD)
gperf は、「完全 (perfect)」ハッシュ関数の表生成ユーティリティで
ある。実際には 2 つのバージョンの gperf があり、1つは C言語で書か
れ、もう1つは C++ 言語で書かれている。いずれも Cまたは C++ 言
語で書かれたハッシュ関数を生成する。
spline プログラムの代
替、graph や plot を用いたシェル・スクリプトの例、統計ツー
ルキットといった特徴があり、ln03 や TekniCAT TDBファイル形式での出力もサ
ポートする。
既存の移植部分に関して再テストが必要である。SPARCstation 以外の移植やテス
トの支援が可能な人は、Rich Murphey (Rich@rice.edu) まで連絡
のこと。
grep、egrep、fgrepが入ってい
る。これらは従来の Unix 版よりもずっと高速に動作する。
dvi 形式、タイプ
ライタのような文字を出力するデバイスなどの各種ドライバだけでなく、
eqn、
nroff、
pic、
refer、
tbl、
troff、
マクロの -man や
-ms、
-mm がある。
Groffのマクロパッケージ mm は、DWB mm マクロとほぼ互換で、
いくつかの拡張が施されている。また、Berkeley me マクロの修正版や
X11 xditview プリビューの拡張版も入っている。C++ 言語で記述され
ており、これらのプログラムは GNU C++ のバージョン2.5以降でコンパイルする
ことができる。
Groffユーザには拡張コードを寄与するように奨励している。優先順位の高い作
業は、Texinfo 形式のドキュメント、grap エミュレーション (グラフを
組版するための pic プリプロセッサ)、pm のようなページ記述
ポストプロセッサ (「Computing Systems」 Vol. 2、No. 2 を参照、
コピーの入手情報は office@usenix.org へ問い合わせのこと) 、
pic 用の ASCII 出力クラスである。これを用いればpic を
Texinfo に統合することが可能になる。配布で提供されているドキュメンテーショ
ンを読んだユーザからの質問やバグ報告は、
bug-groff@prep.ai.mit.edu へ送ることができる。
gzip (DjgppD、EmcsT、LangT、SrcCD、UtilT)
テープや anonymous FTP で配布しているものと、圧縮されているものとがある。
そのようなファイルを復元できるように、テープと FTP サイトにそのソフトウェ
アを収めている。それらのファイルを復元するために、テープと FTP サイト上
に、gzipソフトウェアを入れている。compress に関わる特許問
題のために、我々は別の圧縮プログラムとして gzip に切り替えつつあ
る。gzip は LZW 圧縮ファイルを復元することができるが、圧縮には別
アルゴリズムを採用して一般に良い結果を得ている。また、System Vの
pack プログラムを使って圧縮されたファイルも復元することができる。
hello (SrcCD、UtilT)
GNU hello プログラムは、親しみやすく友好的な挨拶文を生成する。プ
ログラマ以外の人には、コンピュータ科学のツールは使いこなせないと考えられ
ていた古典的なツールを、使いこなせるものとした。なぜならば、これ自体は
GNU 一般公的使用許諾で保護されており、誰もが自由に共有し、変更が可能だか
らである。
本当に有用なプログラムによくあるように、hello は組み込みのメイル・
リーダを用意している。
hp2xx (SrcCD、UtilT)
GNU hp2xx は HP-GL ファイルを読み取り、全ての描画コマンドを基本ベ
クタに再構成したあと様々なベクタやラスタ出力形式に変換する。また、HP-GL
プリビュアも入っている。現在、サポートされているベクタ形式には、
Encapsulated Postscriptや Uniplex RGIP、メタフォント、各種の TeX関連
の特殊ファイル、取り込み用の簡素化された HP-GL (線描画のみ) がある。ラス
タ形式には、IMG、PBM、PCX、HP-PCL (Deskjet と DJ5xxC サポートを含む) が
あり、サポートされている。プリビュアは、X11 (Unix)やOS/2 (PM とフルスク
リーン)、MS-DOS (SVGA、VGA、HGC)上で動作する。
indent (SrcCD、UtilD、UtilT)
GNU indent は、BSD バージョンの改訂版である。既定値では、 GNU コー
ディング規則に従った C ソース・コードへフォーマットする。規定値の BSD、
K&R、その他の形式はオプションで指定する。また、ユーザ固有の形式で定義す
ることも可能である。GNU indent は、以前よりも強化され、C++言
語の注釈を扱うなど、他のバージョンにはない機能を多く提供している。
ftp.maths.tcd.ie マシンの `/pub/bosullvn/jacal' ファイルや
altdorf.ai.mit.edu マシンの `/archive/scm'、
prep.ai.mit.edu マシンの `/pub/gnu/jacal' ファイルを
anonymous FTP で入手可能である。
FSF では、どのような媒体ででも JACAL を配布していない。IBM PC 用のフロッ
ピー・ディスクでソース・ファイルと実行ファイルを希望する場合は、次の所へ
$99.00 を送ればよい (訳注: これは米国内対象の料金である)。
Aubrey Jaffer 84 Pleasant Street Wakefield, MA 01880 USA
m4 (SrcCD、UtilD、UtilT)
GNU m4 は、昔からある Unix のマクロプロセッサの GNU 版で、SVR4 とほ
ぼ完全な互換性を持ち、さらに幾つかの拡張(例えば、マクロに対して位置的な
引数を 9 個以上与えることが可能) が施されている。また、m4 にはファイ
ルのインクルードやシェル・コマンドの実行、演算機能、等を行なう組み込み関数
もある。
make (BinCD、EmcsT、LangT、SrcCD、UtilD、UtilT)
GNU make は POSIX 1003.2をサポートし、その全てを網羅している。さらに
独自の改良を加えており、BSD make、System V make のほとんど全ての機能が備わっ
ている。長い名前のオプション、並列実行や条件実行、テキスト処理機能といった
GNU 版独自の拡張も施されている。最近のバージョンでは、エラー報告機能が改善
され、変数の定義に関して説明を追加するとともに、一般的な `+=' の支援を
追加した。Texinfo 形式の Make Manual のソース・ファイルは、プログラ
ムと共に提供されている。See section GNUドキュメンテーション。
GNU make を各種の配布テープに入れて配布している。システム固有の
make プログラムでは、GNU 構築システムの拡張で使っている基本的な機
能 VPATH が欠けているためである。GNU make ソース・ファイル
には、そのようなシステムで make自体を作成するためにシェル・スクリ
プトが入っている。
nvi (SrcCD、UtilT)
nvi は、Unix エディタ vi/ex を実現したもので、フリー
に配布可能である。オリジナルの vi/ex のほとんどの機能を備
えているが、"open" モードと lisp オプションを追加する予定である。
vi/ex を凌ぐ拡張部分として、画面を複数のバッファに分割した
り、8ビット・データの取り扱い、長さが無制限のファイルと行、タグ・スタッ
ク、無限の取消し (undo)、拡張された正規表現がある。BSD、Linux、 NetBSD、
FreeBSD、 BSDI、 AIX、 HP-UX、 DGUX、 IRIX、 PSF、 PTX、 Solaris、SunOS、
Ultrix、Unixware 上で動作し、その他の多くのシステムに移植するのは容易な
はずである。
bug-octave@che.utexas.edu へ。
Octaveは、ftp.che.utexas.edu マシンの `/pub/octave' ディレクト
リから anonymous FTP にて入手可能である。ファイルは tar 形式になって
おり、gzip 方式で圧縮されている (prep.ai.mit.edu マシンの
`/pub/gnu/README' ファイルを参照のこと)。ソース・ファイルには、150ペー
ジ強の Texinfo 形式のマニュアルが入っているが、FSF からはまだ出版されていな
い。
p2c (LangT、SrcCD)
p2c は、Dave Gillespieが作成した Pascal から C 言語への変換プログラ
ムである。Turbo、HP、VAX、ISO といった Pascal の方言も多く認識し、読みやす
いコードを生成し、保守も容易で、生成された C ソース・コードの移植性も良い。
patch (SrcCD、UtilT)
patch は Larry Wall の作成したプログラムの GNU 版で、diff
の出力結果を取り込んで元のファイルに差分情報を反映させ、パッチをあてたバー
ジョンを作成する。
perl (LangT、SrcCD)
Larry Wall は perl と呼ばれる高速なプログラムを作成した。これは、
様々なシステム・コールと C ライブラリ・ルーチンのインタフェースが備わっ
ているだけではなく、sedやawk、sh、C 言語の特徴をも
兼ね備えている。perl の編集用に perl モードのライブラリが GNU
Emacs 19に入っている。
ptx (SrcCD、UtilD、UtilT)
ptx は、伝統的な交互参照表生成プログラムの GNU 版である。一度に複
数の入力ファイルを扱い、TeX 互換の出力を生成したり、nroff を使
わなくても読みやすい KWIC (KeyWords In Context) 索引を生成すること
ができる。このバージョンでは、一度にすべてがメモリに入り切らない入力ファ
イルは扱っていない。
rc (SrcCD、UtilT)
rc はシェルである。C 言語に似た構文 (Cシェルよりも豊富である) を
備えており、C シェルやB シェルよりもきれいな引用規則を備えているという特
徴がある。会話的に用いられることを想定しているが、スクリプトの作成にも非
常に便利である。esというシェルへ影響を与えた。
diff を使えば、RCS
はバイナリ・ファイル (実行形式、オブジェクト・ファイル、8 ビット・データ・
ファイルなど) を取り扱うことが可能となる。この節で触れている CVS につい
ても参照のこと。
recode (SrcCD、UtilT)
GNU recode は、文字セットとその文字の慣例のものへ関して変換する。正
しい音訳が不可能な場合 ([訳注] 例えば、ロシア語をローマ字で綴るような場合の
こと) は変な文字を取り除いたり、近い文字まで後退する。このプログラムは、約
150 種類の文字セットを認識したり作成し、他のどのような文字へもほとんど変換
することもできる。RFC 1345 のほとんどの文字セットがサポートされている。
sed に付いている。
screen (SrcCD、UtilT)
screen は端末エミュレータであり、 1 台の文字端末上で複数の論理的
なスクリーン (ttys) を実行する。生成された仮想端末ごとに、ANSI X3.64 と
ISO 2022 の機能を幾つか追加した DEC VT100 をエミュレートする。
screen セッションから一時的に終了し、あとから別の端末で再開するこ
とができる。
sed (SrcCD、UtilD、UtilT)
sedは、ed の文字列指向版である。シェル・スクリプトでよく用
いられる。GNU sed には、regex の高速版の rx ライブラリが付いてくる
(see section GNUプログラムの今後の展開)。
basename、
date、
dirname、
echo、
env、
expr、
false、
groups、
id、
nice、
nohup、
printenv、
printf、
sleep、
stty、
su、
tee、
test、
true、
tty、
uname、
who、
whoami、
yes。
Matthias Mutz
Universitaet Passau, FMI
94030 Passau
Germany
電子メイル: mutz@fmi.uni-passau.de
gso に、
機能と生成すべき CPU、許容できる命令数を与える。GCC におけるその応用につい
ては「ACM SIGPLAN PLDI'92」の予稿集に記述されている。superopt は現在、
7 種類の CPU (SPARC、m68000、m68020、m88000、IBM RS/6000、AMD 29000、Intel
80x86、Pyramid、DEC Alpha、HP--PA) をサポートしている。
tar (SrcCD、UtilT)
GNU tar は、マルチボリュームをサポートしており、疎なファイルをアー
カイブする機能やリモート・アーカイブ、アーカイブの自動圧縮 / 復元などを
サポートする。特に、tarを使ってファイル・システムの差分や全体のバッ
クアップをとることができる点が特徴である。残念ながら、GNU tar は、
POSIX 1003.1 ustar 規格の初期のドラフトを基にしているので、最終バー
ジョンには従っていない。古いバージョンとの互換のために変更は容易ではない。
libtermcap.a の差し替えであり、どのよう
なシステムでも利用可能である。通常の termcap とは異なり、Termcap の記述
項目の大きさの制限を外した。Texinfo 形式の Termcap Manual の
テキスト・ソース・ファイルも入っている。See section GNUドキュメンテーション。
web2c TeX パッケージから成る。ソース・ファイルは anonymous FTP
で入手可能であり、検索可能なものが ftp.cs.umb.edu マシンの
`pub/tex/FTP.nwc' に入っている。ワシントン大学からインストール・サ
ポートを受ける場合は、寄付金も送るよう考慮していただきたい。
tar で記述され、1/4inch 4 トラック QIC-24 のカートリッジま
たは 4mm の DAT カートリッジに入った完全配布版を注文するには210ド
ルを次の所へ送る。
Northwest Computing Support Center
DR-10, Thomson Hall 35
University of Washington
Seattle, WA 98195
USA
電子メイル: unixtex@u.washington.edu
電話番号: +1-206-543-6259
支払いは、ワシントン大学へ小切手を送る。小切手は米ドルで、米国にある銀行で
引き落とし可能なものでなければならない。注文は前払いが好ましいが、郵便為替
も可。ただし、郵便為替の場合は、為替交換手数料を支払う必要があるので、さら
に10ドルを上乗せしていただきたい。海外のサイトでは、追加基本料金として普通
便は 20ドル、急ぎの場合は 30 ドルを上乗せしていただきたい。上記の価格と形式
の現状については常時確認していただきたい。
makeinfo、
info、
texi2dvi、
texindex、
tex2patch、
fixfonts。
がある。
Texinfo Manual のテキスト・ソース・ファイルも入っている。
See section GNUドキュメンテーション。
cat、
cksum、
comm、
csplit、
cut、
expand、
fold、
head、
join、
nl、
od、
paste、
pr、
sort、
split、
sum、
tac、
tail、
tr、
unexpand、
uniq、
wc。
time (SrcCD、UtilT)
time という関数は、(通常はシェルから) 1 つのプロセスのユーザ・タ
イムやシステム・タイム、実経過時間の統計情報を出力する。システムによって
は、メモリ消費量、ページ・フォールト、その他の統計情報も出力する。
tput (SrcCD、UtilT)
tput を使うと、特殊な端末機能をシェル・スクリプトで扱えるようにな
り、しかもそれは移植性も良い。GNU のtput では、他のほとんどのバー
ジョンでも行っているような通常の Terminfo ではなく、Termcap データベース
を利用している。
f、 g、t (全
てのウィンドウとパケット・サイズで)、G、t、e、
Zmodem、そして2つの新しい 双方向性のあるプロトコル(iとj)
である。Berkeley ソケット・ライブラリがあれば、TCP接続が可能である。ソー
ス・ファイルにはTexinfo形式のマニュアルも入っているが、印刷されたものは
FSF からまだ出版されていない。
uuencode と uudecode (SrcCD、UtilT)
uuencode と uudecode は、単純な ASCII データ以外はサポートし
ない転送媒体を経由したバイナリ・ファイルの転送に用いる。
wdiff (SrcCD、UtilT)
wdiff は、GNU diff に対するフロントエンドである。2つのファイ
ルを比較して、最初に指定したファイルからどの単語を削除または追加すれば 2 番
目に指定したファイルを得られるかを示す。様々な出力形式をサポートしており、
端末やページャを使ってうまく会話的に処理することも可能である。wdiff
は特に、2つのテキストの違いが数単語または数段落におよぶ場合に有用である。
Go to the first, previous, next, last section, table of contents.