周りの Linux Box に入れたアプリケーション達の記録です. 初めはそれだけのつもりでしたが, 最近はいろいろ書いてます (^^;
[Pazu] Tcl/Tk をブラウザ内で実行させるためのプラグ イン. Tcl/Tk 8.0p2 という古い Tcl/Tk をベースに作られている.
コンパイルは, 同梱されている Tcl, Tk を先に行う. Tcl のコンパイ ルのとき, tclPosixStr.c のコンパイルでコケたので, エラーメッセージ を眺めてコケた部分をコメントアウト (こんなことをしてもいいのか, 詳 細は一切不明 :-). Tk のほうは, 何の問題もなくコンパイル終了.
そして, 最後にプラグインをコンパイル. Netscape を起動させ, 「ヘ ルプ」→「Plug-in について」で, Tcl Plugin 2.0 を確認.
$ tar xzvf tclplug20-src.tar.gz $ cd tclplugin2.0/ $ cd tcl8.0/generic (tclPosixStr.c にパッチを当てる) $ cat tclPosixStr.patch --- tclPosixStr.c.orig Thu Nov 27 08:00:02 1997 +++ tclPosixStr.c Sat Feb 24 11:12:16 2001 @@ -336,9 +336,11 @@ #ifdef ENXIO case ENXIO: return "ENXIO"; #endif + /* #ifdef EOPNOTSUPP case EOPNOTSUPP: return "EOPNOTSUPP"; #endif + */ #ifdef EPERM case EPERM: return "EPERM"; #endif @@ -783,9 +785,11 @@ #ifdef ENXIO case ENXIO: return "no such device or address"; #endif + /* #ifdef EOPNOTSUPP case EOPNOTSUPP: return "operation not supported on socket"; #endif + */ #ifdef EPERM case EPERM: return "not owner"; #endif $ patch < tclPosixStr.patch $ cd ../unix (tcl を make) $ ./configure --enable-shared --enable-gcc $ make $ cd ../../tk8.0/unix/ (tk を make) $ ./configure --enable-shared --enable-gcc $ make $ cd ../../plugin2.0/unix/ (plugin を make) $ ./configure --with-tcl=../../tcl8.0/unix/ \ --with-tk=../../tk8.0/unix/ \ --with-mozilla=/usr/local/netscape/ $ make # make install
[Pazu] Ruby を入れた, PostgreSQL を入れた, でも Ruby から PostgreSQL を操るライブラリを入れてなかったので, インス トール. 献血データ の登録はいまだに手で SQL 文をダイレクトに実行していますが, そ れ以外の簡単な問い合わせには, いくつかの Ruby スクリプトを使ってい ます.
$ tar xzvf ruby-postgres-0.6.2.tar.gz $ cd ruby-postgres-0.6.2 $ ruby extconf.rb \ --with-pgsql-include-dir=/usr/local/pgsql/include \ --with-pgsql-lib-dir=/usr/local/pgsql/lib $ make # make install
[Pazu] 先日入れた Img を Ruby から使えるようにす るために, TclTk-ext を使ってライブラリを作った. 結果的に, あっけなく成功. これで, Ruby/Tk からでも PNG や JPEG などを気楽に扱える. Ruby/GD あたりと組み合わせれば, PNG の画像処理 or 画像作成だっ て楽々できそうだ.
Win の場合は, どうすればいいんだろう…
$ mkdir tcltk-ext $ cd tcltk-ext $ tar xzvf ../tcltk-ext04.tar.gz $ cat Img.def (Img.def は自分で作ろう) $pre_load_lib = [ nil ] $ext_lib_info = [ ['Img', 'libimg1.2.so', ['/usr/lib/Img1.2/']], nil ] $ ruby mk_tkextlib.rb -p Img # cp tcltkextlib.rb tcltkext.rb tkext.rb Img.rb Img.inf \ /usr/local/lib/ruby/site_ruby/1.6/
[Pazu-win]
VMware 経由で走る Win98 に入れ
た Cygwin 上 で Ruby を使えるように
するために, インストール. ソースからコンパイルするのが筋かもしれな
いけど, Win のことはほとんど何も知らない ので, バ
イナリをもらってきて, /
で展開 (tar xzvf
ね)
このバイナリパッケージには Ruby 本体以外にも, irb や racc, RubyUnit などのツールがてんこ盛り. 実行ファイルにしても, ruby.exe 以外にも rubyw.exe や rubywin.exe もある.
私として, 一番気になっているのは Ruby/Tk が走るかどうか. 結果と しては OK でした (^^)v DLL は, Cygwin 上にインストールされているも のではなく, Win 本体に入れたライブラリを参照しているようです. Ruby 内から Tcl のバージョンを表示させたところ, Cygwin に入っている 8.0 ではなく, 自分で入れた 8.3 のバージョン番号が表示されましたし, 窓 の外観も Win 版 Tcl/Tk のものでしたし.
Win で Ruby/Tk をやりたい人は, 次の 3 つのものを入れるだけで OK でしょう.
mswin32 版で Ruby/Tk ができるかどうかは, まだ確認していませ んが.
[Pazu] そろそろ, 飾りで置いてあるスピーカから音を 出したくなってきた. というわけで, フツー, カーネル付属の OSS/Free ぢゃなくて ALSA.
インストールは簡単で, driver, lib, utils を順番に入れてい けばよい. lib はデフォルトで /usr/lib に入るようなので, 嫌なら ./configure のときに設定しよう.
他にやることは…
あとは alsamixer で音量を調整. ALSA はデフォルトで, 音量ゼ ロ, かつミュートがかかっている ので, ミュートを外して音量を上げ て, 例えば aplay hoge.wav. ミュートを外すのを忘れて いて, 最初かなり焦ったけど, 結果的に音は出た (^^)v.
さて, 私のモニタにはスピーカが付いている. ミニジャックのケー ブルをそこに刺せば, 外付けのスピーカが不要になる. 今度, 電器屋 で買ってこよう.
[Pazu-win] (pazu-win は, pazu で VMware を 使って走らせている Win98 の名前です) Win で UNIX 環境を作るための ソフト. ASCII から出た「Windows で GNU ソフトウェアを使おう!」の CD-ROM に入っているものを使用.
setup.exe を起動し, ほとんどデフォルトでインストール. Ash のインストールで何かメッセージが出てたけど, とりあえず無視. インストーラが 異常終了 してしまったけど, インス トールは最後まで行ったようです.
Tcl/Tk を入れたはずだけど, どこへ行ったかなぁ〜と探していたら,
/usr/bin/cygwish80
でした.
/usr/bin/cygitkwish30
ってのもあるけど, これは
何だ?
[Pazu] Tcl/Tk 環境の整備. Plamo Linux 2.1 には Tcl/Tk 8.0.? (jp) が入っているのですが, Tcl/Tk の 最新は 8.3.2 なので, 自分で入れることにした.
コンパイルは, README の通り. すんなり入ります. 元々入ってい た Tcl/Tk 8.0.? (jp) は /usr 以下に, 今度入れた Tcl/Tk 8.3.2 は /usr/local 以下に入れました.
[Pazu] Tcl/Tk はデフォルトで, GIF や XBM, PNM とい う画像形式しかサポートしていない. これを拡張し, JPEG や PNG, TIFF などを使えるようにするのが Img.
Img 1.2.4 には, 以下のライブラリが同梱されています.
これらのライブラリがインストールされていないか, あるいはイ ンストールされていてもバージョンが古いときは, Img と一緒に入れ ておきましょう. ちなみに Plamo Linux 2.1 の場合は, libz と libjpeg は同じバージョンが入っていますが, libpng は 2.1.0.3, libtiff は 3.4 が入っています. 私がテストした限りでは, libtiff.so.3.4 ではデモプログラムが Segmentation fault します (これに気づくのに相当時間を要してしまった :-p)
入れ方は ./configure, make, make install で OK ですが, 私の場合は libpng や libtiff も入 れたので, make png や make tiff, そして make install-png と make install-tiff も やってます.
デモプログラムを起動 (make test か ./demo.tcl) すると, メッセージが日本語で出てきてびっ くりします. で, LANG=en ./demo.tcl とすると, メッセー ジはきちんと英語になったりします. LANG=de や LANG=fr もイける. スゲー
去年の 11 月から, 全然更新していなかった (--;) この間, Linux を全くいじっていなかったということはなくて, それどころか, New PC を自作し, そこに Plamo Linux 2.1 を入れ, 今年になってからモニタが液晶になったり, 更には VMware を入れて X から Win98 が使えるようになったりと, 割と 濃い Linux ライフ を送っていた.
が, 忙しくて, ここに書く時間がとれなかったのだ (_o_) 今日は, やっと少し時間的な余裕ができたので, こうやって書き始めてみる.
じゃ, 先に進もうか
[Pazu] (pazu は, 上で述べた New PC の名前です) 汎用ブートローダ. Linux だと普通は LILO を使うと思うし, 実際, 私も LILO で起動している. GRUB を試したのは, 単に興味から.
GRUB の長所は, 多分, その自由度にある. ブートする HDD と ブートイメージの名前を指定すれば, システムをブートさせることができ る. また, 予め設定しておけば, 矢印キーを使って, 起動する OS を指定 することもできる.
GRUB はインストールしたというか, GRUB の起動ディスクを作っただ け :-) 今は Linux だけしかないのでブートローダに拘る必要性はないん だけど, 他の OS と共存させるようになったら, LILO ぢゃなくて GRUB をメインにしようかなぁとか思ったり.
おたより, お待ちしています
sato.mshr@gmail.comCopyright (C) 2001 Masahiro SATO