大学の課題の n 次元女王支配問題が完成。とりあえずプロファイルをとるか,と思ったが,そういえば VC6.0(だけ?)ではプロファイルのチェックボックスがインクリメンタルリンクとごっちゃになって指定できないバグがあったのを思い出す。

プロジェクトオプションに手動で

/profile

を付ければいいだけだが。ていうかサービスパック 3 でもなおっていないとは。

Perl を起動しようとすると

libgdbm.so.2

がないと怒られる。PJE のページにあるように

ln -s /usr/lib/libdb.so.1 /usr/lib/libdb.so.2
ln -s /lib/libgdbm.so.1 libgdbm.so.2

としてリンクを作ることで解決。


JDK1.1.6 を入れる。割とすんなり入った。

鈴木哲哉「だれでもできる Linux セットアップ」(オーエス出版社,1999)に PJE0.0.5cm が入っているのを発見。早速買ってくる。

インストール。kon を起動すると画面が変になる。ていうか X からは起動できないのね。ちゃんと書いてあった。

再びコンソールから kon を起動。スクロール時に画面がおかしくなる。

kon.cfg の

kon HardScroll on

kon HardScroll off

にすることで解決。インストールをちゃっちゃっと済ませ,環境設定も適当に済ませる。おお。mule が動く。日本語を表示してる。日本語を入力できる。というワケで一応完了。割と楽にできてよかった。

# ちなみにこれも Turbo Linux 日本語版 4.0 のおかげでいらなくなった。

Linux の日本語環境を整えたい。ということでネットで PJE を探す。しかし容量が数十 MB。こりゃムリだ。明日生協で本かなんかに載ってないか探してこよう。

考えてみれば Plamo Linux は元が Slackware Linux なんだから Plamo の起動方法で Slackware を立ち上げられるかも。

そう思い,これでムリだったら封印,と思いつつ Slackware をインストール。起動。立ち上がる。おお。これでもう 1 回立ち上がれば…。

とりあえずユーザー Mortarco を作り,再起動。

立ち上がった。おお。スゴイ。コンソールでこんなに感動したのは初めてだ。バンザーイ。

まあ Plamo の起動手順で Slackware を起動させるところが何かありそうだが,まあとりあえず問題なさそうなのでこれでいこう。

X を設定し,スタート。画面がおかしい。まあウチのビデオカード Trident Cyber9388 は何かいろいろ問題あるらしいのは分かってたので別に驚かない。いろいろ調べていつか立ち上げよう。

一応インストール手順をメモ。

環境

マシン
SHARP Mebius MN-390-X26
CPU
Intel MMX Pentium 266MHz
RAM
128MB
HD
IDE 内蔵 3.2GB
SCSI 外付け 8.4GB(I・O DATA HDVS-UM8.4G)
SCSI コントローラ
Adaptec APA-1460A(PCMCIA カード)
NIC
Logitec LPM-LN20T(PCMCIA カード)
モニタ
640×480 800×600 12.1 型 TFT カラー液晶
ビデオカード
Trident Cyber9388

1. Slackware ブートディスク,ルートディスクを作成。

それぞれ単純に

boot disk
bare.i
root disk
pcmcia.gz

を使用。

2. 外付け HD に Linux 用パーティションを作成。その際 PCMCIA カードは Adaptec APA-1460A を使用した。ちなみにパーティションは

/dev/sda2 Linux Native 1GB

のみ。スワップパーティションは,メモリ 128MB も積んでるし,何度もインストールしているウチにめんどくさくなったので設定しなかった。

3. 「Slackware でわかる Linux 基本操作とインストール」(トッパン)CD-ROM の /Slakware (/Slackware ではない)内を c:slakware にコピー。これは CD-ROM からだと大文字小文字の違いでファイルをコピーできなかったため。

4. c: をマウント。

# mkdir /dos
# mount /dev/hda1 /dos

5. setup を実行。インストールソースは手動で

/dos/slakware

を指定。パッケージは選択はそれどころじゃなかったのでフルインストール。

HD から起動するので LILO は設定しない。

6. その他適当に設定し,再起動。

7. DOS HD 上に起動環境を作成。

UNIX USER 1999 年 7 月号 LibCD Disk1 より

/AT/Install/loadlin.exe
/AT/Install/extroot/extroot
/AT/Install/extroot/vmlinuz
/AT/Install/pcmcia/initrd.gz

を c:linux に入れる。この辺りのファイルは試行錯誤で入れたものなので本当は全然違うかも知れない。

で起動バッチファイル。

linux.bat

chev us
cd c:linux
loadlin vmlinuz initrd=extroot root=/dev/sda2

8. 起動。DOS モードで立ち上げ,

c:>linux

とりあえずこの手順で一応起動する。


アレ? 使ってない Vine Linux が手元に…。まあいいや。あとは

  1. X Window をちゃんと起動させる
  2. 日本語環境の構築

が残っている。そのうちやろう。

というワケで X Window の設定をする。ニフティサーブ FUNIX のログを見てみると, Cyber9388 は XFree86 3.3.2.3 でちゃんとサポートされてないらしい。3.3.3 なら OK のようだが。とりあえず

Chipset    "cyber9397"

にすると大丈夫というようなことが書いてあったのでやってみる。

おお。起動する。感動。ワーイ。

とりあえずこれでよしとしておく。そのうち XFree86 のバージョンアップもやってみたいが。

以下,私の環境の XF86Config ファイルの内容。

#
#    1999/07/07
#    Mortarco
#    hoge@hoge
#     SHARP MN390-X26
#     Intel Pentium 266MHz
#
#      Linux(Slackware3.6)
#
#    XFree86 3.3.2.3
#    XF86_SVGA
#   Trident Cyber 9388 (generic)
#
#
#    2MB
#
#
# 12.1
# TFT
#
#
#

#
# Copyright (c) 1995 by The XFree86 Project, Inc.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
# 
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
# 
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE XFREE86 PROJECT BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
# OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
# 
# Except as contained in this notice, the name of the XFree86 Project shall
# not be used in advertising or otherwise to promote the sale, use or other
# dealings in this Software without prior written authorization from the
# XFree86 Project.
#

# **********************************************************************
# Files section.  This allows default font and rgb paths to be set
# **********************************************************************

Section "Files"

    RgbPath	"/usr/X11R6/lib/X11/rgb"

    FontPath   "/usr/X11R6/lib/X11/fonts/misc/"
    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/:unscaled"
    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/:unscaled"
    FontPath   "/usr/X11R6/lib/X11/fonts/Type1/"
    FontPath   "/usr/X11R6/lib/X11/fonts/Speedo/"
    FontPath   "/usr/X11R6/lib/X11/fonts/75dpi/"
    FontPath   "/usr/X11R6/lib/X11/fonts/100dpi/"

EndSection

# **********************************************************************
# Keyboard section
# **********************************************************************

Section "Keyboard"

    Protocol	"Standard"

    AutoRepeat	500 5

    XkbModel    "jp106"
    XkbLayout   "jp"

EndSection

# **********************************************************************
# Pointer section
# **********************************************************************

Section "Pointer"

    Protocol    "PS/2"
    Device      "/dev/mouse"

    Emulate3Buttons
    Emulate3Timeout    50

EndSection

# **********************************************************************
# Monitor section
# **********************************************************************

Section "Monitor"

    Identifier  "My Monitor"
    VendorName  "Unknown"
    ModelName   "Unknown"

    HorizSync   31.5-50

    VertRefresh 28-76

Modeline "800x600" 36.00 800 864 936 1024 600 601 603 625

EndSection

# **********************************************************************
# Graphics device section
# **********************************************************************

Section "Device"

    Identifier	"Trident Cyber 9388 (generic)"
    VendorName	"Unknown"
    BoardName	"Unknown"
    VideoRam    2048
#    Chipset	"cyber9388"
    Chipset    "cyber9397"
    Option      "noaccel"

EndSection

# **********************************************************************
# Screen sections
# **********************************************************************

Section "Screen"

    Driver      "svga"
    Device      "Trident Cyber 9388 (generic)"
    Monitor     "My Monitor"
    DefaultColorDepth 16

    Subsection "Display"

        Depth       16
        Modes       "800x600"
        ViewPort    0 0
        Virtual 800 600

    EndSubsection

EndSection

このファイルでちゃんと起動した。

# その後 Turbo Linux 日本語版 4.0 を入れたら初期設定で X がきちんと起動したので上の設定ファイルはいらなくなった。

大学の図書館で,Unix User の付録に Plamo Linux が付いているのを発見。早速買いに行く。もうちょっと遅かったら次の号が出ていたので危ないところ。

PCMCIA 用ブートディスクを使って文字化けしつつインストール。

インストールは順調にいった。続いて起動。

無事起動した。ここでユーザーの登録等を行い,再起動する。

起動しない。ルートでログインすることすらできない。

unable to change tty ‘/dev/tty1’ for user ‘root’

とか言われる。ネットを調べてもこんな事例はない。X サーバーにも接続できていないし。むぅ。

Linux が標準で認識してくれる PCMCIA SCSI カード,Adaptec APA-1460A を買ってくる。ここまでやったらやるしかない。10K 程。Vine Linux で SCSI HD の認識ができた。

Disk Druid,何故か 1G 領域確保が IDE HD にしかできない。一旦 Fdisk で 64M,1G を確保,その後 Back し,Disk Druidk で 64M を削除,再確保して tmp に割り当て,また 1G を / にマウントすることで解決。

# ていうか今読み返したら上の文章,意味が分からん。

Vine Linux インストールを進める。X セットアップで,マウスしか動かない状態になって落ちる。リブート。

一回失敗すると SCSI を認識しない。いろいろ試したところ,Slackware Fdisk で領域を削除し,Windows で領域を再確保すると認識するようだ。よく分からん。

とりあえず SCSI をきちんと認識している Slackware を入れてみる。

Slackware では CD-ROM のままでは大文字小文字の違いのためインストーラがファイルを認識しない。ハードディスクに一旦 /Slakware データを移し,

cd /
mount /dev/sda1 /src

とマウントし,mount 領域からのインストールで,

/src/slakware

としてインストールがうまくいく。

再起動。起動しない。そういえば起動しないと PCMCIA カードを認識しないのだからあたりまえだ。

試しに Vine Linux で X を入れずにインストール。やはり起動しない。

ネットをあさる。initrd を使ってできるらしいが…。この状態から起動するには Plamo Linux を入れるのが一番の近道な気がする。しかしどこで手に入れればいいんだろう。FTP じゃ無理だしなあ。

さらにネットをあさる。PCMCIA SCSI カードから起動するのは基本的にムリな感じがしてきた。

次の手段。IDE に / だけを確保する。これだけなら 100M くらいでいいハズ。これには 2 つ方法がある。

  1. バックアップをして IDE HD をフォーマット。パーティションを分割してバックアップを元に戻す。
  2. デフラグして FIPS で分割

1. ではフォーマットはいいとして元に戻す時に問題が出る。DOS から完全なディレクトリ構成をコピーする自信がない。そもそも Windows でファイルをコピーするとき,使用中でコピーできないファイルがでてきたりして完全コピーできない。

LHA 等で圧縮して DOS で解凍したらどうか。8.3 文字以上のファイル名を扱えるかどうかが問題。隠しファイルもきちんとコピーされるかというのもあやしい。

Windows を再インストールしたらどうか。しかしメビウスにはリカバリー CD しか添付されていない。これを使ってしまうとせっかく分割したパーティションが元に戻されてしまう。

Windows98 CD を買ってきて再インストールはどうか。これもかなり大変。周辺機器を全て自分で設定しなければならないからだ。何より安定している Windows 環境はいじりたくない。

方法 2. デフラグをしてみた。4 時間。FIPS を実行する。ラストシリンダにファイルがあるのでダメと言われる。Win98 の変なファイルがあるんだろう。

パーティションを分けてくれる Partition Magic などを使えば何とかなるかも知れない。しかし 10K 程するだろう。この辺りはまだ試していない。

というワケでここまでやって封印。続きはいつか。

箱がかっこいいので Vine Linux を買ってくる。5K 程。やはり SCSI は認識しない。どうやら I・O Data の PCSC-F は対応していないよう。

というか PCMCIA SCSI にインストールするのはかなり大変そうだ。

#ちなみにその後,結局 Vine Linux は起動しなかったので Pha-jtd さんにあげちゃいました。

Slackware Linux インストールを試みる。PCMCIA 経由での SCSI の認識がうまくいかない。ネットをあさってもズバリという解決法は載ってない。

そのまま封印。

HTML,ローカルで <a href=”./”> を開くとディレクトリリストが表示されてしまうが,サーバーではちゃんと表示されることを知る。Denasu の全ての index へのリンクを修正。

スタイルシート,背景を transparent にしていると NN では背景が真っ黒になって困った。しかし考えてみれば背景を指定しなければ body が継承されてちゃんとなることが分かった。

IE で FONT を serif とかで指定してると …(点点点)が文字化けする。NN では問題なし。MS 明朝とか指定しないとダメなのか。

スタイルシートでの複数要素指定を

h1 h2 h3
{
}

のようにやっていた。これでは

<h1><h2><h3></h3></h2></h1>

のことになってしまう。正しくは

h1, h2, h3
{
}

スタイルシートだが,NN では行送りを指定していると,通常のテキストとテキストフィールドが同じ行送りとなり画面が崩れることを発見。

CGI などの URL で,& を a.pl?a=b&amp;c=d のように実体参照にしなければならないことを知り,修正する。

Denasu System 会議室バージョンアップ。タイトルを付けた。


ビーンクイズ,タイトルが固定になってたバグを発見。修正する。

Java から CGI データを使う方法。

Java から CGI で作ったサーバーのローカルファイルを読み込みたいが,うまくいくサーバーとできないサーバーがあった。結局データを読み込むのはあくまでも CGI に任せ,Java から ファイル読み込み CGI を呼び出すことで解決した。が,これだとせっかく普通は読めない場所にファイルを置いといても,直接 CGI を起動すれば他人にファイルが読まれてしまう。パスワードとかを設定すればいいのかな。


カレントディレクトリのファイルを tar ファイルにアーカイブする。

tar -c * > a.tar

ってやったら a.tar の中に a.tar が入ってしまった。結局

tar -c * > ..a.tar

とかでごまかした。

ちなみにすぐ忘れるので解凍方法。

tar xvf a.tar

VC,Doc-View なしのプロジェクトで,ツールバーとかを作成しない場合,CMainFrame::OnCreate を作成してくれない。バグだろう。

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
    if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
        return -1;

    // フレームのクライアント領域全体を占めるビューを作成します。
    if (!m_wndView.Create(NULL, NULL, AFX_WS_DEFAULT_VIEW,
        CRect(0, 0, 0, 0), this, AFX_IDW_PANE_FIRST, NULL))
    {
        TRACE0("Failed to create view windown");
        return -1;
    }

    return 0;
}

を追加。これがないとビューがなくて落ちる。

ビーンクイズ,とらみんさんがメールからコピーする際,.csv の最後の改行を入れるのを忘れたらしい。恐らくこれで動くだろう。

ビーンクイズ,テンプレートもテキストモードで送らなければならないようだ。とらみんさんに修正テンプレートを送る。

Denasu System 会議室,「タグ使用不可」って書くのを忘れていた。追加しておこう。


とらみんさんの掲示板で,発言内に

<!--

と書けば他の発言を巻き込んで荒らせることを発見。やったら怒られるだろうか。

とらみんクイズ,テンプレート表示まではできた。あとは何が悪いのか。


クイズ,改行コードの問題っぽい。普段は Text モードで送るときに変換されるが,tar でアーカイブして送ったために改行コードがそのままになっていたためと思われる。

学校のレポートで TeX にグラフを埋め込む。下に TeX,EPS によるグラフの
取り込み手順を記しておく。

  1. Excel でグラフを作成
  2. スクリーンをキャプチャする。
  3. Paint Shop Pro で EPS に変換。
  4. TeX にインクルード
usepackage[dviout]{graphicx}
…
begin{figure}[h]
    includegraphics[width=12cm,clip]{test.eps}
    caption{キャプション}
    label{test}
end{figure}

その際,奥村晴彦「LaTeX2e 美文書作成入門」(技術評論社,1997)P.194 にあるように,dviout/graphic/LaTex2e/ の color.cfg,dviout.def,graphics.cfg を texsharetexmftexlatexgraphics に入れる必要があった。

また,DVIOUT の設定は,以下のようなバッチファイルを作り,

set GS_LIB=c:gstoolsgs4.03;c:gstoolsgs4.03kanji;c:gstoolsgs4.03fonts
c:gstoolsgs4.03gswin32.exe %1 %2 %3 %4 %5 %6 %7 %8 %9

Graphics の gsx に c:gsset.bat を,形式を monochrome BMP にした。

CGI。テンプレートファイルを展開することで HTML を表示していたが,Content-Type がなくて表示されなかった。

Hi-HO (に限らないが)で CGI が動作しない時に考えられる原因。

  • pl ファイル,テンプレートファイル,データファイルを Binary で送ってないか
  • pl ファイルは EUC にしてあるか