XFree86/OS2 を正しく動作させるために CONFIG.SYS に必要な設定がたくさん あります。以下の設定を追加してください。特にスラッシュとバックスラッシュ は正しく設定するように注意してください:
xterm や使用するエディタに合わせて端末のタイプを設定します。この設定が 必要なプログラムがいくつかあります。筆者は次のように設定しています:
SET TERM=ansi
\XFree86\lib\X11\etc\termcap.x11
EMX, EMACS やその他の移植ソフトウェアに付属している termcap ファイルの
代わりに使うことができる適切な termcap が入っています。
この変数には、前項の TERM
環境変数が検索される termcap ファイルの
位置を設定しなければなりません。例えば、筆者の設定は以下のようになって
います:
SET TERMCAP=D:/EMX/ETC/TERMCAP.X11
ディレクトリの区切りにはバックスラッシュではなく普通の ``/'' を使う点
に注意してください。
ETC ディレクトリを設定します。通常、これは以下のように TCP/IP コードの ETC ディレクトリに設定されています:
SET ETC=C:\TCPIP\ETC
Warp 4 以降では、これは \MPTN\
ディレクトリを指していて
も構いません。これでOKです。
TMP ディレクトリを設定します。TMP ディレクトリは HPFS ドライブ(または 本物のロングファイルネームが使えるファイルシステム)上になければなりま せん。多くの場合、これは既に以下のように TCP/IP コードの TMP ディレク トリに設定されています:
SET TMP=C:\TCPIP\TMP
VisualAge for C++ といったソフトウェアを追加インストールしている場合に
は、この変数は \ibmcpp\tmp
等のディレクトリを指している
かもしれません。
インターネットのホスト名を設定します。通常は TCP/IP のインストールプロ グラムが既に以下のように設定しています。
SET HOSTNAME=myhost
IAK では、通常はループバック設定(
Network configuration
を参照)で実行されるので、設定は以下のようにします:
SET HOSTNAME=localhost
両方にユーザ名を設定します。現在のところは、これを行うと一部のプログラ ムで嬉しいことがあります。将来的には、この変数はマルチユーザ設定のログ インシェルで設定できるようになるかもしれません。例えば、筆者の設定は以 下のようになっています:
SET USER=holger
SET LOGNAME=holger
この変数には、ユーザのホームディレクトリと考えられている既存のディレク トリを設定します。一部のユーティリティはテンポラリファイルや初期化ファ イルをここに置きます。これもマルチユーザ設定向けの将来の開発項目ですが、 その時でも残っているはずです。例えば、この変数は以下のように設定します:
SET HOME=H:\user\holger
これは最も重要な設定の 1 つであり、XFree86 のディレクトリツリーのルー トを決めます。通常は、この変数は \XFree86 があるパーティションのド ライブレターが以下のように設定されます:
SET X11ROOT=Y:
ツリーを別のサブディレクトリ
(K:\OS2\X11\XFree86...
)に移そうとすることがあ
るかもしれませんが、その場合には以下のように変更しなければなりません:
SET X11ROOT=K:/OS2/X11
,
しかし、この変更はしないことをお勧めします。というのも、一部のユーティ
リティは変更を受け付けないからです。この設定ではディレクトリの区切り文
字に普通の ``/'' を使う点に注意してください。
この変数には、画面表示を行うクライアントが使うディスプレイを設定します。
通常この変数には HOSTNAME
の後に単に :0.0
を追加した値を設定
します。例えば以下のようになります:
SET DISPLAY=myhost:0.0
これらのポストフィックスと他のオプションの意味については、X11 のオンラ
インマニュアルを読んでください。
この変数には、使用する X サーバの実行ファイル名を設定します。これは完 全パスでなければなりません。例えば、筆者は以下のように設定しています:
SET XSERVER=D:/XFree86/bin/XF86_Mach64.exe
X11 ユーティリティ用のバイナリディレクトリを検索パスに追加してください。 これは通常、ディレクトリです(ドライブレターを調整してください)。
Y:\XFree86\bin
これらのバイナリを検索パスに含まれる他のディレクトリに移動させることは
可能です。しかし、これはメンテナンス上の理由や構成のわかりやすさの面か
らお勧めできません。もちろん、TVFS 等のソフトウェアを使ってこれらの
ファイルを別の場所にリダイレクトしても構いません。
X11 ユーティリティ用の DLL ディレクトリを LIBPATH に追加してください。 通常、これはディレクトリです(ドライブレターを調整してください)。
Y:\XFree86\lib
DLL をライブラリパスに含まれる他のディレクトリに移動させることは可能で
す。しかし、メンテナンス上の理由や構造のわかりやすさの面から、これはお
勧めできません。Y:\XFree86\lib
にはサブディレクトリ
がいくつかある点に注意してください。これらはどこに動かすこともできず、
ずっとそこになければいけません。というのも、大部分のユーティリティは
%X11ROOT%\XFree86\lib
をベース値として使ってディレ
クトリへのパスを作っているからです。
SET MANPATH=Y:\XFree86\man;Y:\EMX\man
注意: xman 単体では全ての Unix のオンラインマニュアルを正しく表示する
ことはできません。GROFF
という整形ツールもインストールしなければ
ならないでしょう。詳しくは FAQ を見てください。
XFree86 に入っているスクリプトの一部は、標準の CMD.EXE に互換なシェル を前提としています。CMD.EXE には、xterm 内で正常に動作するための重要な 機能がいくつかあります。他で作られたシェルは、入出力は標準入力/標準出 力のファイルチャネルから受け取るけれど、キーボードとビデオのサービスは 直接アクセスするといった xterm のような環境で動作するように開発されて いません。上記の変数を使うと、XFree86 の外では好きなシェルを使い、 XFree86 の中だけでは CMD.EXE を使うようにシステムを再設定できます。 詳しくは FAQ を見てください。
最近のバージョンの XFree86/OS2 には checkinstall.cmd
という名前
の REXX スクリプトが含まれています。このスクリプトを使って、項目のほと
んどを正しく入力したかどうかチェックを行うことができます(行うべきです)。
これは弾避けではありませんが、明らかな設定ミスの大部分を防ぐことができ
ます。
また X サーバ自身も同じチェックを行い、設定が誤っている場合には X サー
バは起動しません。