  SCO ユーザ向けの情報
  J. Kean Johnston (hug@netcom.com)
  30 November 1996
  The X Japanese Documentation Project
  9 February 1999
  ____________________________________________________________

  目次

  1. バイナリ配布物について
  2. ソース配布物
  3. XFree86 を実行する前に
  4. コンソールの切替え
  5. オンラインマニュアルの設定
  6. SCO バイナリ/サーバの使用
  7. Open Server 5 における XFree86 のコンパイル
  8. 関連文書
  9. 既知の問題
  10. トラブルシューティング
  11. 謝辞

  ______________________________________________________________________

  1.  バイナリ配布物について

  バイナリ配布物では以下のファイルが用意されています:

          README.SCO
             このファイル

          gunzip.Z
             GNU 圧縮ファイル展開 ユーティリティ

          *X312Xdoc.tgz
             XFree86 固有のドキュメント

          X312Mono.tgz
             白黒サーバ

          X312VG16.tgz
             16 色 VGA サーバ

          X312SVGA.tgz
             Super VGA サーバ

          X312S3.tgz
             S3 サーバ

          X3128514.tgz
             8514 サーバ

          X312AGX.tgz
             AGX サーバ

          X312Mc32.tgz
             Mach 32 サーバ

          X312Mc64.tgz
             Mach 64 サーバ

     X312Mc8.tgz
        Mach 8 サーバ

     X312P9k.tgz
        P9000 サーバ

     X312W32.tgz
        ET4000/W32 サーバ

     *X312cfg.tgz
        xdm/fs/xinit のローカル用設定ファイル

     *X312bin.tgz
        bin ディレクトリ。実行ファイルの大部分を含みます。

     *X312lib.tgz
        共有・非共有ライブラリ

     *X312fnt1.tgz
        75dpi と misc フォント

     X312fnt2.tgz
        100dpi と Speedo フォント

     *X312inc.tgz
        X11 のインクルードファイル

     X312man.tgz
        清書されたオンラインマニュアル

     X312lkit.tgz
        サーバリンクキット(ドライバ全て + PEX).

     X312util.tgz
        多くのパブリックドメインのユーティリティが as is で提
        供されています。

     X312pex.tgz
        ライブラリとヘッダファイルを含む PEX 関連のファイル全
        て。PEX を実行する機能を持つサーバを得るには、リンク
        キットが必要です。

  最小構成で XFree86 をインストールするには、上記のリストで「*」印が付け
  られたアーカイブ、マシンに最も合ったサーバのバイナリ、(必要に応じて)
  "gunzip.Z" が必要です。全てのファイルは "gzip" で圧縮されていますが、
  当然 "gunzip.Z" は例外で、これだけは従来通りの compress プログラムを
  使って圧縮されています。

  XFree86 のバイナリをインストールするには単に以下の手順にしたがってくだ
  さい。

  1. 必要なファイルを入手します。

     この手順の残りの部分は root ユーザで行わなければなりません。root ユ
     ーザでえ展開を行わないと、ファイルのパーミッションが正しくなりませ
     ん。例えば、「X」サーバは root の s-ビットが立っているので、一般ユ
     ーザで展開すると正しく機能しません。

  2. /usr/X11R6 を設定し、パーミッションを 755 にします。

  3. cd /usr/X11R6

  4. アーカイブを展開します。例を以下に示します:

                 gunzip < X312bin.tgz | tar xvpf -

  5. オンラインマニュアルをインストールしていれば、オンラインマニュアル
     の設定に関する後述のセクションを参照してください。

  6. /usr/X11R6/lib/X11/doc/INSTALL (特に XFree86 の設定と利用に関する、
     セクション 2)に目を通してください。このドキュメントを読めばきっとサ
     ーバの起動・実行ができるはずです。サーバを起動する前には、本ドキュ
     メントで後述の「``XFree86 の起動の前に''」セクションを調べて、サー
     バを正しく動作させるために必要なシステム要件がないかどうかを確認し
     てください。

  2.  ソース配布物

  SCO 向け移植は XFree86 標準の配布物の一部として入手できます。ソースの
  場所についての詳しい情報については、XFree86 の README を調べてくださ
  い。

  XFree86 3.2 においては SCO Open Server リリース 5 以降しかサポートされ
  ていな点に注意してください。前のバージョンの SCO UNIX で XFree86 を使
  いたければ、3.1 系列を使ってください。さもないと構築に失敗するでしょ
  う。

  ソースを調べたい人や調べる必要がある人のために ``xc/config/cf'' に 2
  つのファイルが用意されました。まず ``sco.cf'' が古いオリジナルの SCO
  用設定ファイルで、そして ``sco5.cf'' が現在使われている設定ファイルで
  す。

  3.  XFree86 を実行する前に

  SCO 付属の xterm の terminfo 記述は、R5 配布に含まれる xterm 記述と互
  換ではありません。

  バスマウス, キーボードマウス、PS/2 マウスを使うためには、前述のように
  'mkdev mouse' を使って SCO 環境でマウスンドライバの設定を行わなければ
  なりません。それから、XF86Config で OsMouse オプションを指定し
  て、XFree86 に SCO マウスドライバを使うよう指定します。この指定を行う
  には、XF86Config の Pointer セクションで Protocol に "OsMouse" を設定
  します。シリアルマウスに対して "OsMouse" を使うこともできます。特
  に、XFree86 のマウスドライバでマウスがうまく動作しない場合にはそうする
  とよいでしょう。

  SCO TCP/IP パッケージをインストールしていなくても、あわてないでくださ
  い。XFree86 は TCP/IP  無しでもうまく動作しますが、以下の作業の一部あ
  るいは全てを多分行わなければならないでしょう:

  o  X サーバが ``/dev/socksys'' に関して出すエラーは気にしないでくださ
     い。X サーバは TCP/IP があっても無くても動作するように設定されてい
     ます。このエラーは TCP/IP が無いことを指摘していることと、サーバへ
     の接続メソッドが無効にされたことを指摘しているだけです。

  o  ``/dev/spx'' や接続タイプ ``sco'' を含むエラーは無視しないでくださ
     い。これは、ローカルマシン上で接続に使われるストリームパイプに何ら
     かの問題があるということです。まずはサーバに「s-ビット」が設定され
     ていることを確かめましょう。これは使っている X サーバに対して次のコ
     マンドを実行することで確かめられます:
     ls -al /usr/X11R6/bin/XF86_XXXXXX

     出力では、文字「x」ではなく文字「s」が入っているはずです。例えば、

       -rwsr-xr-x   1 root     bin      1074060 Jul 24 11:54 XF86_W32

  は正しいですが、

       -rwxr-xr-x   1 root     bin      1074060 Jul 24 11:54 XF86_W32

  は誤りです。

  o  ``mkdev streams'' を使ってカーネルにストリームをインストールしなけ
     ればならないかもしれません。詳しくは SCO のマニュアルで調べてくださ
     い。

  o  /dev ディレクトリで一部のデバイスを設定する必要があるかもしれませ
     ん。本ドキュメントの「トラブルシューティング」セクションで、
     ``/dev/spx'' と ``Xsco'' の説明をしている項目を調べてください。

  o  ストリームリソースの設定が低すぎるかもしれません。以下に挙げる値に
     ついて、ストリームのパラメータを調べるべきですが、値が高めであれば
     変更する必要はありません。これらの値を調べるためには、root ユーザと
     してログインし、``/etc/conf/cf.d'' ディレクトリに移動
     し、``./configure'' を実行してください。

     configure を実行したら ``Streams Data'' を選択して、エントリを見て
     いきます。値を変更するのでなければ、それぞれのプロンプトで単に
     <ENTER> を押すだけです。確認する値と、その最小値を以下に挙げておき
     ます:

                          NSTREAM      128
                          NQUEUE       512
                          NBLK4096     4
                          NBLK2048     32
                          NBLK1024     32
                          NBLK512      32
                          NBLK256      64
                          NBLK128      256
                          NBLK64       256
                          NBLK16       256
                          NBLK4        128
                          NUMSP        128

  通常はこれらの値を変更する必要はないでしょう。しかし、変更をしなければ
  ならない場合には、configure は終了の前に変更をセーブするかどうか確認を
  行い、UNIX カーネルを再構築する手順の続きを表示します。

  4.  コンソールの切替え

  XFree86 のコンソール切替えのキー操作は SCO R4 や R5 サーバのものに似て
  います。つまり、Ctrl-PrntScr を押すと、X サーバが動作しているコンソー
  ルの次のコンソールに移動します。これが最後のコンソールならば、コンソー
  ル 1 に移動します。Ctrl-Alt-FXX(XX はファンクションキー F1 〜 F12)を押
  すと、そのファンクションキーに割り当てられた番号のコンソールに切り替わ
  ります。F1 は tty01 (つまりコンソール 1)に対応し、F2 は tty02 (つまり
  コンソール 2)に対応します。それ以降も同様です。コンソール切替えの修正
  に興味があれば、 xc/programs/Xserver/hw/xfree86/common/xf86Events.c を
  見てください。

  5.  オンラインマニュアルの設定

  ツリーをコンパイルした後やバイナリ配布をインストールした後に、
  /usr/X11R6/man を /etc/default/man の MANPATH に追加することで、man に
  XFree86  のオンラインマニュアルを認識させることができます。指定の行は
  以下のようになるはずです:

           MANPATH=/usr/man:/usr/X11R6/man

  これにより、ユーザ全員が X のオンラインマニュアルを参照できるようにな
  ります。全員にオンラインマニュアルを見せるつもりがなければ、自分の
  MANPATH 環境変数を変えてもよいでしょう。

  デフォルトでは、ディスク容量節約のためにオンラインマニュアルは
  ``compress'' を使って圧縮されています。オンラインマニュアルを圧縮した
  くなければ、``xf86site.def'' ファイルの CompressManPages を NO に変更
  してください。バイナリ配布を利用する場合は、``uncompress'' を使ってオ
  ンラインマニュアルを展開してください。

  6.  SCO バイナリ/サーバの使用

  XFree86 は SCO バイナリ(R3 以降)からの接続を受け付け、SCO R5 サーバも
  XFree86 バイナリからの接続を受け付けます。つまり、ODT がなければ両者を
  混在させることや適合させることができます。例えば、使いたければ Motif
  のウィンドウマネージャ(mwm)を使うこともできます。

  7.  Open Server 5 における XFree86 のコンパイル

  GCC バージョン 2.8.0 では Open Server がサポートされています。以下の指
  定を使って configure を行いましょう:

           ./configure i486-sco3.2v5.0

  gcc を修正する必要は全くありません。Open Server 5 では全く問題なしにコ
  ンパイルできます。

  XFree86 は自動的に SCO Open Server 5.0 を認識します。 make World を行
  う際に BOOTSTRAPCFLAGS を指定する必要はありません。make World の最初の
  方で BOOTSTRAPCFLAGS に関するウォーニングメッセージが出ますが、無視し
  て構いません。

  1. ``site.def/xf86site.def'' をうまく調整します。

     gcc が使えるならば使いましょう。XFree は DevSys の cc でもコンパイ
     ルできるはずですが、GCC の最適化の方が優れていますし、動作が保証さ
     れています。

  2. SCO Open Server には Visual TCL が付属していますが、これは古い (互
     換性も無い)バージョンの TCL です。XF86Setup を使うなら、自前で Tcl
     と Tk をコンパイルする必要があるでしょう。どちらも SCO Open Server
     5 をちゃんとサポートしています。Tcl 7.6 と Tk 4.2 は
     ftp://ftp.smli.com/pub/tcl から入手することができます。

  3. 動的ローディングのサポートを無効にしたいことがあるかもしれません。
     一部のユーザから、動的ローディングに関する問題が報告されていま
     す。XIE は PEX5 が動作しないことは確実です。試してみたければ、これ
     を有効にしてください。この結果が成功でも失敗でも筆者に報告してくだ
     さい。

  4. 古いバージョンの SCO でやっていたのと同じように HasSVR3mmapDrv を有
     効にしては いけません。 Open Server 5 は mmap() を完全にサポートし
     ており、これがフレームバッファに直接アクセスするために使われます。

  5. COFF バイナリをもう使わないことが分かっており、ディスク容量も少ない
     場合には、ForceNormalLib に NO を設定してください。これを行う
     と、ELF 版のライブラリしか構築されません。 ``sco5.cf'' ではデフォル
     トでこれに YES を設定しているので、``xf86site.def'' で明示的に NO
     を指定しなければなりません。ディスク節約のため、全てのバイナリが
     ELF モードでコンパイルされます。

  8.  関連文書

  以下のファイル中に SCO のユーザや開発者用の関連記述がいくらかありま
  す。

     README
        XFree86 標準の README (/usr/X11R6/lib/X11/doc)

     README.SVR3
        この README の大部分は Interactive Unix に基づくものですが、本質
        的な部分ではまだ関連があります。

     VGA/設定ドキュメント全て
        /usr/X11R6/lib/X11/doc/VideoModes.doc および 特定のビデオカード
        向けの README。

  9.  既知の問題

  o  サーバを実行した後に、シェルへの入力の文字がおかしくなることがあり
     ます。これは未処理のスキャンコードのためであり、心配する必要はあり
     ません。この問題は将来のリリースで修正されるでしょう。

  o  /usr/X11R6/bin にある全てのアプリケーションをデバッグしたわけではあ
     りません。

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

     問題:

          サーバが起動しません。エラーメッセージが全く出力されない
          ので、どんな問題が起こっているのかが分かりません。

     原因:

          サーバが起動しない原因はいくらでも考えられます。ですか
          ら、まずはサーバが言おうとしていることをはっきりさせま
          しょう。これを行うには、サーバのエラー出力をファイルに保
          存しなければなりません。この出力には、サーバの起動時にサ
          ーバが検出したことや行ったことのログが含まれています。こ
          の出力を得るには、次のようにして X を起動します:

                         startx 2> /tmp/errs

          これで、サーバの出力が "/tmp/errs" に保存されます。この出
          力を見て考えられる問題を調べ、該当する問題について本ド
          キュメント中の記述を調べてください。

     問題:

          サーバが起動しましたが、画面が真っ暗で何も表示されませ
          ん。マシンがハングしたようなのですが。

     原因:

          これも多くの原因が考えられます。最もありそうな原因
          は、XF86Config に誤りがあることです。X サーバがまだ動作し
          ていれば、Ctrl-Alt-BackSpace を入力してサーバを殺してくだ
          さい。これで画面が元に戻らなければ、何も見ずにシステムを
          操作しなければならないかもしれません。シェルのプロンプト
          の状態にある別のログインを常に用意しておき、画面に何も表
          示されなくても、その画面に切替えてコマンドを実行できるよ
          うにしておきましょう。そして、以下の操作を試してくださ
          い。普通は列挙した順番で行ってください:

          o  ``X'' を起動したログインからログアウトし、それからコン
             ソールを変更します。これにより、SCO の画面切替えコード
             がカードを初期化しようとします。

          o  ``vidi v80x25'' を実行します。このコマンドも、カードを
             表示可能モードに設定しようとします。

          o  ``shutdown'' コマンドでマシンを正常にシャットダウン
             し、再挑戦します。

             最初に XFree86 を実行しようとするときは、必ず簡単な設
             定を使いましょう。つまり、まず 640x480 を動作させ、そ
             れから解像度を高くするのです。先に示した方法で常にサー
             バの出力を拾いましょう。ビデオカードに対して有効なク
             ロック値を一度見つけたら、この値を XF86Config に直接書
             き込んでください。これにより、普通はクロック周波数をい
             くつか検出する XFree86 の起動時において、モニタにかか
             る負担をいくらか取り除くことができるでしょう。 ``X''
             の画面を表示させるのはひどく時間がかかる作業になるかも
             しれません。腰を据えて、このドキュメントを理解できるま
             で何度も読みましょう。きっと動かすことができるはずで
        す。

     問題:

                     Fatal server error:
                     xf86MapVidMem:No class map defined for (XXXXX,XXXXX)

     原因:

             1. システムの /etc/conf/pack.d/cn/class.h が正しくあり
                ません。これはこのファイルを編集し、文字列 "SVGA"
                を探すことにより確認することができます。この文字列
                が無ければ、OS 付属の "Extended Utilities" ディス
                ケットからこのファイルを再インストールしなければな
                りません。これができない場合には、配布物から
                "dmmap" をインストールするとサーバを正しく動作させ
                ることができるかもしれません。

     問題:

          xf86install が動作しません。

     原因:

          SCO で XFree86 サーバを使うときは、xf86install を実行して
          はいけません。これは Interactive Unix (ISC) のインストー
          ルにつかうものです。

     問題:

          サーバは起動しますが、画面の配置が正しくなかったり、画面
          が揺れてまともに見ることができなかったりします。

     原因:

          一番ありそうなのは、XF86Config の設定が誤っていることで
          す。 README.Config, VideoModes.doc ファイルを調べてくださ
          い(バイナリ配布では /usr/X11R6/lib/X11/doc にあります)。
          これらのファイルでは、ビデオモードの修正方法が説明されて
          います。

     問題:

        1. 起動できる xterm の数が制限されてしまいます。

        2. xterm は動作しませんが、xclock 等の他のプログラムは動きます。

     原因:

          システムの疑似 tty デバイスが存在しないか、数が足りないの
          でしょう。 "mkdev ptty" を実行して、ptty の数を増やしてく
          ださい。

     問題:

          xterm 内で curses/termcap のアプリケーションを実行する
          と、特にスクロールしたときに画面が乱れます。

     原因:

        1. XFree86 のオリジナルのバージョン 1.3 の配布を実行しています。
           最新のバージョン(3.2 以降)に更新してください。

        2. ウィンドウをリサイズしたのに、アプリケーションを使う前に
           "eval `resize`" を実行していません。SCO オペレーティングシス
           テムは xterm の動的なリサイズを完全にサポートしていないので、
           curses/termcap アプリケーションを正しく動作させるためには、
           xterm をリサイズした後に、このコマンドを実行しなければなりま
           せん。

     問題:

        1. X を起動させると、Cannot access a needed shared library" とい
           うエラーを吐いて死んでしまいます。

        2. X のアプリケーションを起動すると、上記のエラーを吐いて死んで
           しまいます。

     原因:

        1. バイナリが正しいディレクトリにインストールされていません。バ
           イナリが /usr/X11R6 にあることを確かめてください。

        2. 新しい共有ライブラリを含む新しいバイナリ配布に更新したけれ
           ど、ライブラリが古いバイナリと互換ではありませんでした。この
           問題を解決するには、古い共有ライブラリを再インストールする
           か、アプリケーションを新しいライブラリで再コンパイルしてくだ
           さい。

     問題:

          gcc を使って SCO の Motif ライブラリとリンクすると、
          "XtDisplayStringConversionWarning" について外部関数が未解
          決になってしまいます。

     原因:

          SCO のライブラリは、識別子の長さが制限されるようにコンパ
          イルされています。この問題を回避するためには、XFree86 と
          gcc と SCO の Motif でコンパイルを行う時に以下のようなコ
          ードをアプリケーションに追加してください。

              #ifdef SCO
              void XtDisplayStringConversionWarnin(dpy, from, toType)
                  Display*  dpy;
                  String    from;
                  String    toType;
              { XtDisplayStringConversionWarning(dpy, from, toType); }
              #endif

     問題:

     サーバが起動に失敗し、次のような行を出力します:

     XFree86: Cannot open /dev/spx for ???? listener: No such
     file or directory

     原因:

          SCO UNIX をインストールすると必ず、Streams 仮想 tty ドラ
          イバがインストールされるようですが、必ずしも全てのデバイ
          スが存在するわけではありません。

             1. /etc/conf/pack.d/sp ディレクトリが存在しなければな
                らず、

             2. /etc/conf/sdevice.d/sp の内容は 'Y' でなければなり
                ません。

             3. /etc/conf/node.d には以下のような内容のファイルが必
                要です:

                        clone   spx             c       sp
                        sp      X0S             c       127
                        sp      X0R             c       126
                        sp      X1S             c       125
                        sp      X1R             c       124
                        sp      X2S             c       123
                        sp      X2R             c       122
                        sp      X3S             c       121
                        sp      X3R             c       120
                        sp      X4S             c       119
                        sp      X4R             c       118
                        sp      X5S             c       117
                        sp      X5R             c       116
                        sp      X6S             c       115
                        sp      X6R             c       114
                        sp      X7S             c       113
                        sp      X7R             c       112

          このようなファイル(たぶん "Xsco" という名前です)が無けれ
          ば作成してください。そうすれば問題が解決するはずです。筆
          者が言える限りでは、Streams 仮想 tty ドライバはそこにある
          はずです。

          このファイルを作成しなければならない場合にデバイスを得る
          ための最も簡単な方法は、カーネルと環境を再構築することで
          す。それをしたくなければ、

                  touch /etc/.new_unix
                  cd /etc/conf/bin
                  ./idmkenv

          を行ってから、それを試してください。

  11.  謝辞

  コアチームには、今までと現在進行中の SCO 対応の作業を助けていただきま
  したことに感謝します。SCO の Stacey Campbell さんには、助言や識見を与
  えていただきましたことに深く感謝します。SCO には一般に、XFree86 の開発
  に利用可能な情報を作っていただいたことに感謝します。

  また、Peter Eubert さん(peter.eubert@iwb.mw.tu-muenchen.dbp.de) と
  Kent Hamilton さん(kenth@stl.scscom.COM) には、 3.2.4 システムでのコン
  パイルについて御教示いただいたことに感謝します。 Larry Plona さ
  ん(faxi@world.std.com) と Didier Poirot (dp@chorus.fr) には、3.1 シス
  テムでの 3.2.4 のコンパイルと xdm について御教示いただいたことに感謝し
  ます。また、当然ながら、ベータテスト用メーリングリストの皆さんには色々
  教えていただいたことに感謝します。

  バイナリ配布用の ftp サイトを提供してくださった Jerry Whelan さ
  ん(guru@stasi.bradley.edu)には特に感謝します。

  $XFree86: xc/programs/Xserver/hw/xfree86/doc/Japanese/README.SCO,v 1.1.2.2 1999/11/26 15:23:12 hohndel Exp $

  $XConsortium: SCO.sgml /main/11 1996/10/23 11:45:55 kaleb $

