  OS/2 における XFree86 に関する README
  Holger Veit
  Last modified on: December 12th, 1999
  The X Japanese Documentation Project
  Last modified on: December 21th, 1999
  ____________________________________________________________

  Table of Contents


  1. リリース 3.3.6 に関する最初の注意
  2. XFree86 とその入手方法について
  3. 本ドキュメントに対するバグ報告
  4. 必要なハードウェアとソフトウェア
     4.1 サポートされているハードウェアと、必要あるいは推奨のハードウェア
     4.2 必要なソフトウェア

  5. システムのインストール
  6. トラブルシューティング
  7. ビデオハードウェアの互換性のチェック
  8. パッケージのインストール
  9. CONFIG.SYS への環境変数の追加
  10. ネットワーク設定に関する注意
  11. 動的な IP の考慮
  12. ハードウェアに合わせた X の設定
  13. X の実行
  14. XFree86 配布物の再構築
  15. 新しい X クライアントの構築
  16. 日本語訳について


  ______________________________________________________________________

  1.  リリース 3.3.6 に関する最初の注意


  このファイルを読む前に、バイナリ配布物に付属している LATEST.OS2 を全て
  確認してください。問題があったと騒ぐ前には、以下の XFree86/OS2 の WWW
  ページもチェックしてください:

  o  http://ais.gmd.de/~veit/os2/xf86os2.html

  o  http://ais.gmd.de/~veit/os2/xf86bugs.html

  o  http://ais.gmd.de/~veit/os2/x11os2faq.html

  このバージョンのコードは XFree86/OS2 3.3.6 と呼ばれます。これは 3.3.5
  以前のバージョンのバグ修正リリースであり、AGP ボードを含むいくつかの新
  しいカードに対するハードウェアサポートがさらに追加されたものです。
  XFree86-3.3.6 は以前のバージョンに対してリリースされたセキュリティ関連
  の修正も全て含んでいます。詳しくは RELNOTES ドキュメントを参照してくだ
  さい。

  XFree86/OS2-3.3.6 は全ての機能を持ち、制限も無く、古くなっていないバー
  ジョンで、ソースコードも全て入手可能です。ベータ版とは異なり、このコー
  ドはエンドユーザが使う分には十分安定していると考えています。バグがたく
  さん修正されているので、今まで XFree86/OS2 3.3.x を使っていて、それが
  お使いのハードウェア上でうまく動いていたとしても、このバージョンに移行
  することをお勧めします。 3.3.6 がリリースがリリースされたことによ
  り、3.3 系の古いバージョンは引っ込められ、アーカイブはこのバージョンに
  更新されるでしょう。このドキュメント中にはまだ 3.3 や 3.3.x についての
  言及があるかもしれませんが、特に注意書きが無ければ、これらは 3.3.6 に
  も当てはまります。

  前のバージョンは多くの機器構成でテストされており、いくつかバグは残って
  いますが、ほぼ問題無く動作することがわかっています。
  X11R6.3 の「core」配布という点では、このリリースは(例外が少しあります
  が)ほぼ完全です。「contrib」配布の一部は移植版ソフトウェアのページ
  http://ais.gmd.de/~veit/os2/xf86ported.html から入手することができま
  す。

  過去のベータテストで、ソフトウェアそのものは比較的安定で、ハードウェア
  を壊すことはないことが分かっています。ただし、これはユーザが組み込みの
  制限値を越えようとしたり、ビデオハードウェアの仕様外の操作ができる特定
  の設定パラメータを変更したりしない場合の話です。

  しかし、

  o  我々が安定と考えているコードについても、あるコードが正しく動作した
     り全て動作するという明示的あるいは暗黙の保証はありません。

  o  マシンを壊したという報告を受けたことはありませんが、これはこのコー
     ドでハードウェアを壊すことはありえないということではありません。深
     くに潜んだバグがまだソフトウェアに残っているかもしれません。

  このソフトウェアをインストールする前には、重要なデータをバックアップす
  ることをお勧めしますが、これは何をインストールする前にでも一般的に言え
  る注意のはずです。X サーバがクラッシュすること自体がデータを壊したり内
  容を変えたりしたという報告はありませんが、まれにシステムが不安定な状態
  になることがありえます(ビデオ表示モードが壊れたり、システムが反応しな
  くなったり、マウスやキーボードの動作に反応しなくなる)。このような場合
  にシステムをハードリセットしたり電源を切ると、オペレーティングシステム
  のファイルのキャッシュが正しくディスクに書き戻されずに、データが無く
  なってしまうことがあります。


  2.  XFree86 とその入手方法について

  XFree86 は X11R6.3 を Intel ベースの Unix のいくつかに移植したもので
  す。 XFree86 は元々、 X386 1.2 という X11R5 と一緒に配布されていた X
  サーバでした。このリリースでは新しい機能がたくさん追加され、性能も改善
  されていますし、バグもたくさん修正されています。リリースは X コンソー
  シアムの X11R6.3 のソースへのパッチの形でも入手できますし、多くのアー
  キテクチャ用のバイナリの形でも入手できます。

  XFree86/OS2 は OS/2 ベースのシステム用の XFree86 の実装の名前です。

  著作権表示には目を通しておいてください。



  OS/2 Warp, Merlin, Aurora 用のバイナリは以下の場所から入手できます:
  ftp.XFree86.org:/pub/XFree86/3.3.6/OS2

  WWW ページ http://borneo.gmd.de/~veit/os2/xf86os2.html には通常、ソー
  スやバイナリを入手できる FTP サイトや WWW サイトへのリンクがもっとある
  でしょう。


  他のバージョン:

  XFree86/OS2 は Warp 3 の変種全てで動作します。これには Warp "red spine
  box", Warp "blue spine box", Warp Connect, Warp Server, Warp 4 が含ま
  れます。

  Warp 3 の場合、修正パックレベル 17 以降をインストールすることを強くお
  勧めします。修正パック 26 をインストールすると XFree86 が動作しなく
  なってしまうという報告が何件かありますが、本当の理由は確かではありませ
  ん。 Warp 3 用の最近の修正パック(36 等)では動作するようです。

  Warp 4 は最近の公式修正パックを使っても使わなくても使えるようです。

  いずれの場合も LATEST.OS2 ファイルを確認してください。

  今回のバージョンではもう OS/2 2.11 はサポートされていません。これは動
  作テスト環境が無いためです。したがって、OS/2 SMP 2.11 もサポートされて
  いません。Warp Server SMP はサポートされていますが、複数のプロセッサが
  動作することによる一般的な速度向上以外には、SMP には大きな利点はありま
  せん。OS/2 のバージョン 1.X は全くサポートしていませんし、これからサポ
  ートされることもないでしょう。

  XFree86/OS2 をソースから構築することもできます。こちらについては、ド
  キュメント OS2.NOTES をご覧ください。


  3.  本ドキュメントに対するバグ報告

  このファイルに対するコメントや提案があれば、Holger.Veit@gmd.de (Holger
  Veit) あるいは XFree86@XFree86.org まで電子メールを送ってください井。
  文書を改訂します。


  4.  必要なハードウェアとソフトウェア


  4.1.  サポートされているハードウェアと、必要あるいは推奨のハードウェア


  o  RAM を 16MB 積んだ 486DX33 が少なくとも必要です。メモリをもっと積ん
     だ Pentium や Pentium Pro が推奨されます。386 やメモリが 8MB 未満と
     いうのは、機器構成としては不十分です。

  o  ネットワークカード、ディスクの種類、CD-ROM に関する特別な要件はあり
     ません。当然ながら、性能は高ければ高いほど良いです。

  o  インストールしているパッケージによって、フォーマット済の HPFS パー
     ティション(またはロングファイルネームをネイティブに利用できる JFS,
     NFS, ext2fs パーティション)に 20〜55MB のディスク領域が必要です。
     XFree86/OS2 は FAT パーティション上では動作しません。

  o  XFree86 がサポートしているビデオカードが必要です。サポートされてい
     るカードについては、一般の README を参照してください。注意すべき点
     として、XFree86 がサポートしているビデオカードがあり、OS/2 がサポー
     トしているビデオカードがありますが、両者はちょうど一致しているわけ
     ではありません。つまり、お使いのカードが OS/2 でサポートされていて
     も、XFree86 でも動作するわけではないということです。その逆も言えま
     す。XFree86 は OS/2 オペレーティングシステムのビデオサービスを使い
     ません。


  4.2.  必要なソフトウェア


  o  少なくとも修正パック 17 が当たっている全てのバージョンの Warp3 ある
     いは Warp 4 が必要です。

  o  XFree86/OS2-3.3.6 はローカルの名前付きパイプ接続か TCP/IP ベースの
     ネットワーク接続を使うことがあります。

     1. Warp は Internet Access Kit (IAK) が付属しています。これがあれば
        大丈夫です。Warp Connect と Warp Server には完全なバージョンの
        TCP/IP (3.0) が付属しています。IAK よりはこちらのソフトウェアを
        使うほうが良いでしょう。

     2. Warp 4 には TCP/IP 4.0 が付属しており、これも動作するはずです。

     3. EMX 0.9 fix 4 を使うと、新しい 32 ビットの IBM TCP/IP 4.1 という
        製品も使えるという報告があります。
     4. IBM の PMX という製品に付属している古い IBM TCP/IP 2.0 も Warp
        で使えるかもしれませんが、IBM はもうこれをサポートしていません。
        最新の CSD がインストールされていることを確認してください。

     FTP や DEC, Hummingbird 版の TCP/IP など他のバージョンの TCP/IP や
     IBM TCP/IP 1.X はサポートされていません。DOS(パケットドライバや
     winsock), Netware, NetBIOS からのネットワークサポートも動作しませ
     ん。作者は将来的にもこれをサポートするつもりはありません。

  o  XFree86 用にアプリケーションを作成・移植しようと考えていれば、ぜひ
     そうしてください。これを行うには EMX/gcc 0.9C fix4 以降を完全にイン
     ストールする必要があるでしょう。2番目の(古い)gcc の実装や、 Cset/2,
     VAC++, Borland C++/OS2, Watcom C++, Metaware C 等を含む商用パッケー
     ジはいずれも移植には向いていません。なぜなら、X の DLL には、EMX だ
     けが持っている特定の機能に依存している部分が色々あるからです。


  5.  システムのインストール

  バイナリ配布物は、実行ファイル、サーバ、フォント、ライブラリ、インクル
  ードファイル、オンラインマニュアル、設定ファイルが入っているたくさんの
  zip アーカイブから構成されています。配布物全体では、ディスク容量を約
  40〜50MB 必要とします。

  このαバージョンの全てのアーカイブは info-zip ユーティリティで圧縮され
  ています。これは OS/2 のアーカイブの多くから UNZ512X2.EXE (あるいは
  もっと新しいバージョン)という名前で入手することができます。この展開プ
  ログラムは、OS/2 ネイティブのバージョンを入手してください。DOS 版の
  PKUNZIP は長いファイル名や拡張属性を展開できないため、正しく動作しませ
  ん。

  現時点では、配布物は「コア」配布物だけを対象にしていますが、これだけで
  はあまり使いものになりません。XFree86 に移植された構築済の X クライア
  ントを入手するには、XFree86/OS2 FAQ で挙げられている WWW サイトやアー
  カイブ等を参照してください。

  パッケージの内容を以下に示します:


     必須:

        Xbase
           特殊なデバイスドライバと SuperProbe プログラム注意: WSeB
           (Aurora) で起こる問題を避けるためには、このファイルに付属して
           いる最新バージョンの xf86sup.sys をインストールしなければなり
           ません。古いバージョンでは動作しません。

        Xdoc
           README と XFree86 固有のオンラインマニュアル

        Xbin
           実行可能な X クライアントアプリケーションと共有ライブラリ全て

        Xfnts
           misc フォントと 75dpi フォント

        emxrt
           EMX のランタイムライブラリ

        以下の中からハードウェアにあったものを少なくとも 1 つ選択します:


        X8514
           IBM 8514/A とその互換ボード用の X サーバ


        XAGX
           AGX ボード用の X サーバ

        XGlnt
           Permedia / GLINT ボード用の X サーバ

        XI128
           #9 Imagination 128 ボード用の X サーバ

        XMa32
           ATI Mach32 グラフィックスボード用の X サーバ

        XMa64
           ATI Mach64 グラフィックスボード用の X サーバ

        XMa8
           ATI Mach8 グラフィックスボード用の X サーバ

        XMono
           白黒 X サーバ

        XP9K
           P9000 ベースのボード用の X サーバ

        XS3
           S3 ベースのボード(S3 ViRGE を除く)用の X サーバ

        XS3V
           S3 ViRGE ベースのボード用の X サーバ

        XSVGA
           Super VGA カード用の 8 ビット pseudo-color X サーバ

        XVG16
           VGA & SVGA カード用の 4 ビット pseudo-color X サーバ

        XW32
           et4000w32 ベースのボード用の X サーバ


     無くても良いもの:

        Xman
           X11 のインタフェースとクライアントに関するフォーマット済のオ
           ンラインマニュアル

        Xf100
           100dpi フォント

        Xfscl
           Speedo フォントと Type1 フォント

        Xfnon
           日本語、中国語などのフォント

        Xfcyr
           キリル文字フォント

        Xfsrv
           フォントサーバと、そのオンラインマニュアル

        Xprog
           他の Xアプリケーションをコンパイルするための X11 のヘッダファ
           イルとプログラマ向けのユーティリティ


        Xpex
           PEX アプリケーションに必要な PEX のフォントとライブラリ

  ディスク容量を節約し、ネットワーク転送に必要なバンド幅を減らすため、取
  得するソフトウェアは注意深く決めてください。それぞれの X サーバはアー
  カイブのサイズは 1.2MB で、ディスク上では 3.0MB の容量を必要とします。
  通常は、ビデオボードにあった X サーバ 1 つ以外は必要無いはずです。

  インストールを初めて行う場合には、他のどのパッケージよりも先に Xbase
  アーカイブを入手してください。このパッケージにはドライバと、ビデオハー
  ドウェアを解析するテストプログラムが入っています。このプログラムが動作
  しない場合や、利用できないハードウェアであると報告した場合、奇跡的に動
  くことを期待して他のパッケージを入手しても無意味です。


  6.  トラブルシューティング

  どうしていきなりこのセクションを見ているんですか? これをここに書いてい
  るのは、ここならば見落とされない可能性が最も高いからです。XFree86 をイ
  ンストールするとあなた必ずトラブルに出会うと言っているわけではないので
  すが、警告はしておきます: 以下のセクションは重要であり、あわてたり手を
  抜いたために怠っていることがあると、あなたにとっては X11 システムが動
  かないことになりますし、我々にとっては余計な面倒がかかることになりま
  す。

  しかし、信じられないくらいの数の機器構成があるため、以下の説明ではうま
  く行かない特殊な状況や機器構成もあると思います。そういう場合には、いつ
  の間にかトラブル対処ガイドに発展した「よく聞かれる質問(Frequently
  Asked Questions, FAQ)」のリストを読んでください。繰り返しますが、必ず
  読んでください。最新版は常に
  http://ais.gmd.de/~veit/os2/x11os2faq.html にあります。

  もしかすると、あなたがバグを見つけたのかもしれません(きっとあなたの想
  像力がたくましすぎただけだと思いますが)。その場合には
  http://ais.gmd.de/~veit/os2/xf86bugs.html を見て、それが既知のものかど
  うか調べてください。これで見つからなければ、新しい問題に出会っているこ
  とになるので、これを XFree86(xfree86@xfree86.org)に報告してください。
  ちゃんとした問題報告を書くための情報が FAQ に用意されているので、これ
  を参照してください。

  ニュースグループで設定の質問をする時は comp.os.os2.setup.misc を利用し
  てください。筆者はこのニュースグループを読んでいるので、他のニュースグ
  ループに投稿したり、報告を筆者のメールアドレスや xfree86@xfree86.org
  に転送しても、処理は早くなりませんし筆者に何かを強制できるわけでもあり
  ません。

  さて、あまり読者の皆さんを意気消沈させるわけにもいかないので、設定のセ
  クションを始めしょう:


  7.  ビデオハードウェアの互換性のチェック

  以下の説明では、ドライブレターが Y: (たぶん使っていないと思いますが)で
  あるディスクドライブにXFree86/OS2 をインストールしようとしているものと
  します。コマンド全てについて、ドライブレターは適切に変更してください。


  1. パッケージ Xbase を入手し、Y: ドライブのルートディレクトリからイン
     ストールします。インストールでは以下のコマンドを入力します:


       [C:\] Y:
       [Y:\] cd \
       [Y:\] unzip \path_of_package\Xbase.zip


  2. CONFIG.SYS ファイルを編集し、以下の行をどこかに追加します:


       DEVICE=Y:\XFree86\lib\xf86sup.sys




  当然ながら、``Y:'' は正しいドライブレターに置き換えてください。


  3. この時点で、XFree86/OS2 に必要な環境変数の追加も考えておくとよいで
     しょう。これにより余計な再起動の手間が省けます。後述の ``CONFIG.SYS
     への環境変数の追加'' セクションを参照してください。

  4. CONFIG.SYS ファイルにデバイスドライバのエントリを追加した後は、ドラ
     イバをインストールするために再起動しなければなりません。
     XFree86/OS2 はこのドライバ無しでは動作しません。

  5. フルスクリーンの OS/2 CMD セッションを起動し、以下のコマンドを入力
     します:


       [C:\] Y:\XFree86\bin\SuperProbe





  6. このコマンドは(通常)ビデオ機器構成に関する重要な情報を報告します。
     この情報とは、チップセットの種類、利用可能なビデオメモリ、利用可能
     な RAMDAC 回路です。この情報はメモするか、以下のように入力して
     ``SuperProbe'' の出力をファイルにリダイレクトするかしてください:


       [C:\] Y:\XFree86\bin\SuperProbe >filename





  7. SuperProbe は XFree86 がサポートしているよりもずっと多くのビデオカ
     ードを識別することができます。しかし残念ながら、SuperProbe がカード
     を間違って検出し、フォールバック値の一種である MCGA カードを見つけ
     たと言うことが時々あります。一般的には、だいたい正しそうならば疑う
     理由はほとんどありません。ですが明らかにおかしい場合(Cirrus のカー
     ドを使っているのに ET4000 があると言われる場合など)には、検出ミスを
     後述のアドレスまでバグとして報告してください。どんな場合であれ、
     ちゃんと時間を取って付属の README.* ファイルを調べ、特別な予備注
     意、オプション、カードの機能を確認してください。

  8. お使いのハードウェアがサポートされていると README ファイルに書かれ
     ていれば、残りのソフトウェアを入手してください。


  8.  パッケージのインストール

  XFree86/OS2 は drive:\XFree86 から始まるディレクトリ階層を想定していま
  す。これを変えることもできますが、そうしないことを強くお勧めします。


  1. 十分な空き容量がある HPFS パーティションを選びます。

  2. インストールするパッケージのそれぞれについて、このドライブのルート
     ディレクトリに移動し、以下のコマンドを入力します:

  drive:> cd \
  drive:> unzip \パッケージのパス名\Xxxxx.zip




  3. 一部のパッケージではファイルが重なっていると報告されるかもしれませ
     ん。例えば、X サーバのパッケージは対応する README ファイルをインス
     トールしますが、これは Xdoc パッケージにも入っています。これは問題
     ありません。ファイルは同じものです。unzip にファイルを上書きさせて
     ください。

  4. ファイルを展開するための特別な手順は必要ありません。


  9.  CONFIG.SYS への環境変数の追加

  XFree86/OS2 を正しく動作させるために CONFIG.SYS に必要な設定がたくさん
  あります。以下の設定を追加してください。特にスラッシュとバックスラッ
  シュは正しく設定するように注意してください:

     TERM
        xterm や使用するエディタに合わせて端末のタイプを設定します。この
        設定が必要なプログラムがいくつかあります。筆者は次のように設定し
        ています:


          SET TERM=ansi




     \XFree86\lib\X11\etc\termcap.x11 EMX, EMACS やその他の移植ソフト
     ウェアに付属している termcap ファイルの代わりに使うことができる適切
     な termcap が入っています。

     TERMCAP
        この変数には、前項の TERM 環境変数が検索される termcap ファイル
        の位置を設定しなければなりません。例えば、筆者の設定は以下のよう
        になっています:


          SET TERMCAP=D:/EMX/ETC/TERMCAP.X11




     ディレクトリの区切りにはバックスラッシュではなく普通の ``/'' を使う
     点に注意してください。

     ETC
        ETC ディレクトリを設定します。通常、これは以下のように TCP/IP コ
        ードの ETC ディレクトリに設定されています:


          SET ETC=C:\TCPIP\ETC




     Warp 4 以降では、これは \MPTN\ ディレクトリを指していても構いませ
     ん。これでOKです。

     TMP
        TMP ディレクトリを設定します。TMP ディレクトリは HPFS ドライ
        ブ(または本物のロングファイルネームが使えるファイルシステム)上に
        なければなりません。多くの場合、これは既に以下のように TCP/IP コ
        ードの TMP ディレクトリに設定されています:


          SET TMP=C:\TCPIP\TMP




     VisualAge for C++ といったソフトウェアを追加インストールしている場
     合には、この変数は \ibmcpp\tmp 等のディレクトリを指しているかもしれ
     ません。

     HOSTNAME
        インターネットのホスト名を設定します。通常は TCP/IP のインストー
        ルプログラムが既に以下のように設定しています。


          SET HOSTNAME=myhost




     IAK では、通常はループバック設定(``Network configuration'' を参
     照)で実行されるので、設定は以下のようにします:


          SET HOSTNAME=localhost




     USER

     LOGNAME
        両方にユーザ名を設定します。現在のところは、これを行うと一部のプ
        ログラムで嬉しいことがあります。将来的には、この変数はマルチユー
        ザ設定のログインシェルで設定できるようになるかもしれません。例え
        ば、筆者の設定は以下のようになっています:


                  SET USER=holger
                  SET LOGNAME=holger




     HOME
        この変数には、ユーザのホームディレクトリと考えられている既存の
        ディレクトリを設定します。一部のユーティリティはテンポラリファイ
        ルや初期化ファイルをここに置きます。これもマルチユーザ設定向けの
        将来の開発項目ですが、その時でも残っているはずです。例えば、この
        変数は以下のように設定します:


          SET HOME=H:\user\holger




     X11ROOT
        これは最も重要な設定の 1 つであり、XFree86 のディレクトリツリー
        のルートを決めます。通常は、この変数は \XFree86 があるパーティ
        ションのドライブレターが以下のように設定されます:


     SET X11ROOT=Y:




     ツリーを別のサブディレクトリ (K:\OS2\X11\XFree86...)に移そうとする
     ことがあるかもしれませんが、その場合には以下のように変更しなければ
     なりません:


          SET X11ROOT=K:/OS2/X11



     , しかし、この変更はしないことをお勧めします。というのも、一部のユ
     ーティリティは変更を受け付けないからです。この設定ではディレクトリ
     の区切り文字に普通の ``/'' を使う点に注意してください。

     DISPLAY
        この変数には、画面表示を行うクライアントが使うディスプレイを設定
        します。通常この変数には HOSTNAME の後に単に :0.0 を追加した値を
        設定します。例えば以下のようになります:


          SET DISPLAY=myhost:0.0




     これらのポストフィックスと他のオプションの意味については、X11 のオ
     ンラインマニュアルを読んでください。

     XSERVER
        この変数には、使用する X サーバの実行ファイル名を設定します。こ
        れは完全パスでなければなりません。例えば、筆者は以下のように設定
        しています:


          SET XSERVER=D:/XFree86/bin/XF86_Mach64.exe




     PATH
        X11 ユーティリティ用のバイナリディレクトリを検索パスに追加してく
        ださい。これは通常、ディレクトリです(ドライブレターを調整してく
        ださい)。


          Y:\XFree86\bin




     これらのバイナリを検索パスに含まれる他のディレクトリに移動させるこ
     とは可能です。しかし、これはメンテナンス上の理由や構成のわかりやす
     さの面からお勧めできません。もちろん、TVFS 等のソフトウェアを使って
     これらのファイルを別の場所にリダイレクトしても構いません。

     LIBPATH
        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 を見てください。

     OS2_SHELL

     COMSPEC

     SHELL

     X11SHELL
        XFree86 に入っているスクリプトの一部は、標準の CMD.EXE に互換な
        シェルを前提としています。CMD.EXE には、xterm 内で正常に動作する
        ための重要な機能がいくつかあります。他で作られたシェルは、入出力
        は標準入力/標準出力のファイルチャネルから受け取るけれど、キーボ
        ードとビデオのサービスは直接アクセスするといった xterm のような
        環境で動作するように開発されていません。上記の変数を使う
        と、XFree86 の外では好きなシェルを使い、 XFree86 の中だけでは
        CMD.EXE を使うようにシステムを再設定できます。詳しくは FAQ を見
        てください。

  最近のバージョンの XFree86/OS2  には checkinstall.cmd という名前の
  REXX スクリプトが含まれています。このスクリプトを使って、項目のほとん
  どを正しく入力したかどうかチェックを行うことができます(行うべきです)。
  これは弾避けではありませんが、明らかな設定ミスの大部分を防ぐことができ
  ます。また X サーバ自身も同じチェックを行い、設定が誤っている場合には
  X サーバは起動しません。

  10.  ネットワーク設定に関する注意

  TCP/IP ネットワークシステムの正しいインストールについての手引きさえ、
  本ドキュメントの範囲を越えています。この作業は読者の皆さん自身が行う
  か、どこかから手伝ってくれる人を探してくるしかありません。ここで言える
  ことは、TCP/IP ベースの LAN ネットワーク上でうまく動作している PC は、
  XFree86/OS2 もうまく動作するだろうということだけです(他の必須の条件も
  満たされている場合)。

  IAK を使っている場合には、インターネットプロバイダに接続している間だけ
  XFree86/OS2 を使いたいのでなければ、特別な設定が必要です。この設定はい
  わゆる「ローカルホスト」や「ループバック」と言われる設定です。これはロ
  ーカルのネットワークインタフェースで、同じホストに「ループして」戻って
  くるものです。この場合には以下の設定が必要です:


  1. 以下の内容を持つ \tcpip\etc\hosts というファイルを作成します:


  127.0.0.1  localhost




  2. 以下の行を \tcpip\bin\tcpstart.cmd に追加します:


       ifconfig lo 127.0.0.1 up




  このような tcpstart.cmd ファイルが無い場合(Warp 4 では、このファイルは
  \MPTN\BIN\MPTSTART.CMD と呼ばれます)には、このファイルを作成し、以下の
  ような行を CONFIG.SYS ファイルに追加してください: CALL=C:\OS2\CMD.EXE
  /Q /C  C:\tcpip\bin\tcpstart.cmd >NUL: (起動ドライブは C: であるものと
  しています。)

  3. 前のセクションで説明した通り、HOSTNAME 環境変数に localhost を設定
     します。

  4. 以下の行を CONFIG.SYS に追加します:


       SET USE_HOSTS_FIRST=1




  5. 再起動後、以下のコマンドが動作するか確認します:


       [C:\] ping localhost




  PC が LAN に接続されている場合(直接でも、SLIP/PPP 経由でも)には、この
  「ループバック」インタフェースは必要ありません。

  SLIP/PPP 回線の場合には、XFree86 を起動する前に、この接続を確立しなけ
  ればなりません。詳しくは次の節を見てください。

  ホスト名を使う(例えば DISPLAY 変数内での使用)機能は、ホスト名解決機構
  と関係する点に注意してください。LAN ベースの DNS サーバを利用できない
  のであれば、関係するホスト名をHOSTS ファイルに追加しなければなりませ
  ん。システムの設定フォルダの TCP/IP 設定ダイアログを使えば、このファイ
  ルを編集できます。

  XFree86/OS2 に付属している checkinstall.cmd スクリプトは、設定に関する
  アドバイスもいくらかしてくれます。

  これやや他の基本的なネットワーク関係のツールを動作させる際に問題が起
  こったら、FAQ (xf86os2 mailing list) を調べるか、メーリングリストのア
  ーカイブを調べてください。


  11.  動的な IP の考慮

  一般的には、マシンの IP が固定であれば全体が最もうまく動作します。ロー
  カルホストアドレスと(ルーティングされない)固定のローカルアドレス
  (10.x.x.x, 192.168.x.x, 172.16.x.x-172.31.x.x)でもうまく動作します。 X
  接続などの両端で問題が起こるのは、動的な IP アドレスが含まれている場合
  です。これは例えば、ISP に PPP 接続している場合などです。残念ながら、
  XFree86/OS2 のネットコミュニティはこれに役立つスクリプト群をまだ用意で
  きていないので(筆者がまとめるつもりです)、ここでは実際に問題になってい
  ることについてヒントをいくつか出すだけにします: X サーバは定義された何
  らかの値を持つホスト/ポート番号のソケットで X プロトコルのパケットを監
  視します。X サーバはソケットに関する情報をコマンドラインまたは解決され
  たホスト名(ホスト名は HOSTS ファイルまたは DNS サーバから取得します)か
  ら得ます。ここで HOSTNAME 変数が出てきます。一度サーバが動き出す
  と、IP/ホスト名の設定変更はもはや認識されません。したがって、動的に IP
  が割り当てられる接続上で X を使うための一般的なアプローチは以下のよう
  になります: ISP への接続をまず確立し、それから X サーバを起動します。X
  サーバの起動を行う関連スクリプトは startx.cmd です。このスクリプト
  は(間接的に) \XFree86\lib\X11\xinit\xinitrc.cmd スクリプトを実行しま
  す。したがって、これらのスクリプトを修正して、 HOSTNAME 変数と DISPLAY
  変数を正しく設定し、正しい IP アドレスを使って X サーバを起動しなけれ
  ばなりません。X サーバのログの一番初めのあたりには、監視している IP ア
  ドレスがデバッグ目的のために出力されています。


  12.  ハードウェアに合わせた X の設定

  必要な設定を追加し、ネットワーク動作の設定を終えた後、ウィンドウセッ
  ションか、全画面の OS/2 テキストセッションから xf86config プログラムを
  実行し、Y:\XFree86\lib\X11\XF86Config に標準設定ファイルを作成してくだ
  さい:


       [C:\] xf86config




  xf86config プログラムは質問をたくさんしてきます。ここで SuperProbe プ
  ログラムから得た情報が必要になるでしょう。このプログラムは自己説明的な
  はずです。しかし、何かを理解できないことがあれば、ニュースグループで助
  けを求めてください。

  XF86Config ファイルをテキストエディタで編集することも可能ですが、エキ
  スパートでない方はまず後込みしてしまうでしょう。しかし FAQ で説明され
  ている一部の場合では、必ずこれをしなければならないこともあります。この
  ファイルは Win95 のレジストリのようなハッカーの領域ではありませんが、
  簡単に破壊をもたらしかねない点は同じです。

  XF86Config ファイルの詳しいフォーマットについては、オンラインマニュア
  ルの XF86Config(4/5) を参照してください。

  Linux や他の XFree86 のプラットフォームにおける設定手順を知っているな
  らば、いくつかの相違点を見つけることでしょう:


  o  マウスの種類やデバイスに関する設定はありません。マウスのデバイス名
     は OSMOUSE に固定されており、変更することはできません。3 ボタンマウ
     スを持っている場合には、3 ボタンマウス用の正しい OS/2 用ドライバを
     インストールしてください。例えば MouseSystems 互換のマウスの場合に
     は以下のようになります:


       DEVICE=D:\OS2\BOOT\PCLOGIC.SYS SERIAL=COM1
       DEVICE=D:\OS2\BOOT\MOUSE.SYS TYPE=PCLOGIC$




  o  X サーバは OS/2 ネイティブのキーボードマップを読みませんが、
     xf86config プログラムで言語が選択可能であれば、新しい XKB サーバ拡
     張が既に正しいキーボード配列を与えていると思います。誤った設定に出
     会ったら、間違っている所を詳しく説明した電子メールを
     XFree86@XFree86.org まで送ってください。XKB を使っていても、一部の
     キー設定を xmodmap ファイルで置き換えることはできます。詳しくは
     xmodmap のオンラインマニュアルを参照してください(あるいは Linux な
     どで利用可能な xmodmap ファイルを使ってください――これらは同じもの
     です)。

  o  Wacom や Elographics の入力デバイスはまだサポートされていません。

  大抵の場合、Linux や他のプラットフォームの同じバージョンの XFree86 用
  の既存の XF86Config を変更無しで使えると思います。ただし、よく知られた
  例外が 2 つあります: S3 805 ベースの VLB カードの一部はビデオメモリを
  おかしな位置に配置します。また、Matrox のカードでは PM ドライバが解決
  できない矛盾を起こすようです。

  S3 VLB カードの場合、X サーバは可能性のあるメモリ領域を実験的にマップ
  やアンマップすることで、このメモリを探すことができます。しかし、
  XFree86/OS2 ではこの処理の途中で OS がメモリタイルを使い果たすことがあ
  ります。こうなった場合、メモリの位置を自分で見つけ、オプション


               MemBase 0x12345678




  を XF86Config ファイルの "Device" セクションに追加しなくてはなりませ
  ん。

  Matrox のカードの場合には、X サーバがカードの PCI ID を正しく検出でき
  ず、そのために PM ドライバと Matrox BIOS がカードの PCI 設定をおかしな
  風に再プログラムするかもしれません。こうなるとサーバは VGA 互換で解像
  度が 320x200 のモードに陥ります。これを防ぐには、


               PCIProbe2




  を XF86Config ファイルの "ServerFlags" セクションに追加します。

  一度 XF86Config ファイルが設定できれば、xvidtune ユーティリティを使っ
  てビデオモードを良い設定にチューニングすることができます。これは PM
  ウィンドウの中からではなく、動作中の X サーバのローカルの xterm のウィ
  ンドウの中から実行しなければならない X11 プログラムであることに注意し
  てください。


  13.  X の実行

  ネットワークソフトウェア、 X, プレゼンテーションマネージャを同時に実行
  するには、メモリは最低 16MB は欲しいところです。サーバ、ウィンドウマネ
  ージャ、xterm 1 つでメモリをだいたい 4〜6MB 使います。X は 8MB 以下の
  メモリでも起動しますが、激しいスワップが起きて、性能は非常に悪くなりま
  す。しかし、考え方は人それぞれなので、これでも我慢できると思う人もいる
  かもしれません。

  リソースに関する要求は他にもいくつかあります: WindowMaker, KDE, Gnome,
  Enlightenment 等の複雑なデスクトップ環境が登場したことにより、非常に多
  くのグラフィックスフィーチャが追加され、必要なリソースは大きくなりまし
  た。 X サーバは使われたフォントやリソース設定を内部的にキャッシュする
  ので、ウィンドウ(バッキングストア)の数によっては、先に述べた量よりも
  ずっと多くのメモリとスワップ領域が必要となります。また、X は PM と同時
  に動作して資源を共有することも考慮してください。筆者のシステムは比較的
  強力な PII-233、メモリ 128M のマシンですが、これは開発システムです。
  64MB がだいたい標準で、普通の目的ではこれで十分です。筆者のラップトッ
  プ機では、メモリ 32MB でも Aurora と XFree86 が一緒に動いています。
  初めてのユーザが X ウィンドウを起動するための最も簡単な方法は、


       startx




  を PM の CMD ウィンドウから実行することです。このコマンドをフルスクリ
  ーンのセッションやリモートの telnet セッションから実行すると問題が起き
  ることが報告されているので、これを行ってはいけません。

  X ウィンドウから抜け出すには、コンソールになっている xterm で ``exit''
  を入力してください。.xinitrc, .xserverrc, .twmrc ファイルを HOME 環境
  変数が指しているディレクトリに作成することで、X をカスタマイズすること
  ができます。これらのファイルについては xinit と startx のオンラインマ
  ニュアルで説明されています。

  デフォルトでは、システム全体の xinitrc ファイル
  (Y:/XFree86/lib/X11/xinit/xinitrc.cmd)はかなり作りが簡単である twm
  ウィンドウマネージャをインストールします。
  http://ais.gmd.de/~veit/os2/xf86ported.html にある移植ソフトウェアのペ
  ージで、もっと良いウィンドウマネージャを見つけることができるでしょう。


  14.  XFree86 配布物の再構築

  本当に XFree86/OS2 をソースからコンパイルしたいんですか? 最初から
  XFree86/OS2 を再コンパイルするための詳しい手順については、
  「OS2.Notes」ファイルを読んでください。


  15.  新しい X クライアントの構築

  新しいクライアント(X アプリケーション)を構築するための最も簡単な方法
  は、 Imakefile がソースに付属していれば、xmkmf を使うことです。
  ``xmkmf -a'' を実行して Makefile を生成し、必要に応じて設定をチェック
  し、``xmake'' を実行してください。``xmake'' は GNU make プログラムのた
  めのラッパであり、Imakefile から生成された Makefile 中に決って入ってい
  る誤った SHELL の設定を潰します。X クライアントの移植についての詳しい
  ヒントについては、XFree86/OS2 FAQ もご覧ください。

  謝辞


  以下の方々に感謝します:

  o  サーバのコードのデバッグに関して大きく貢献された Sebastien Marineau
     さん。

  o  この移植が大きく依存している素晴らしい基本プラットフォームである
     EMX を作成された Eberhard Mattes さん

  o  わたし - いやいや、これは忘れてください。自分を誉める気はありません
     :-)











  $XFree86: xc/programs/Xserver/hw/xfree86/doc/Japanese/README.OS2,v 1.1.2.3 1999/12/28 12:13:48 hohndel Exp $







  $XConsortium: OS2.sgml /main/4 1996/03/11 10:46:06 kaleb $




  16.  日本語訳について

  日本語訳は X Japanese Documentation Project が行いました (翻訳: 藤原輝
  嘉 <fujiwara@linux.or.jp> <mailto:fujiwara@linux.or.jp>)。問題点の指摘
  やご意見は藤原まで御連絡ください。原文の著作権は XFree86 プロジェクト
  社にあり、日本語訳に伴う権利は X Japanese Documentation Project にあり
  ます。
