ふりぽけ日記 (2000年11月中旬)

[ 捕捉確認済アンテナ ]
日記観察
*BSD Diary Links
わっちりんく(す)
はこんだらウォッチ
天野アンテナ
HNN日記バード
しっぽあんてな
しぐなるぽ〜と
  • 99:システムバックアップをとる
  • 90:mhttpd のテスト&デバッグ
  • 10:過去日記置場

2000.11.11 (Sat)

@ 疑問

「NetBSD とわたし」にコメントつけたい時にはどこ宛にリンクを張ればいいのかしら。 アンカーがないし、バックナンバーに移動したら張り替える必要があるし。


2000.11.12 (Sun)

@ hpcmips

Mgl2 のバイナリがどこかに置いてあるはず、と思って探して見るが見付からないので、Xhpc で日本語を、 と思ってやってみるとなんと kterm で日本語を出せない。 Couldn't set locale: ... なんていうエラーメッセージが。

NetBSD の X で日本語を使うの初めてだし。

@ [mhttpd]CGI の環境変数

PATH_INFO とか SCRIPT_NAME とか…、他にもいろいろ未設定のものがあるらしく、動かないスクリプトがあるようで。

やないさんにいただいたパッチをもとにコードをいじってみる。これで MoinMoin には対応できるらしい。

うう、PATH_TRANSLATED って、いったいどんな値をいれるべきなんでしょうか?

@ [mhttpd]エンバグ

あと高野さんからもコードについてフィードバック。

勘違い を修正。m(_@_)m

@ [mhttpd]というわけで

MoinMoin の動作テストはできていないものの、修正版を 公開

今回は getopt() を搭載して

-p NUM ポート番号
-v 冗長なメッセージ
-I ディレクトリ一覧を抑止

というオプション指定に対応。

注)
助長 → 冗長
でした。


2000.11.15 (Wed)

@ 電車でビルド

電車の中で mgl2-alpha-019 をビルド。 しかし NetBSD-1.5Beta2 な MC/R430 では mgterm を起動しても表示ができない。 ディスクのアクセス音からして入力はできているから、それ以外の動作は普通にいっている様子。 C-d で戻って来るし。

ちょっと前 port-hpcmips-ja で話題になっていたので参照しつつ、 lib/md_hpcmips.h の 430 の項 を 256 から 1573120 に変更して解決。

@ サンデー

短期新連載(うう、タイトル失念)ですが、 一話の中できちんと起伏のついた構成で、今後の展開も非常に期待が持てます。

ヒロインがなんだかどこかで見たような顔や髪型だ、とういうのは別な問題ですが。

っていうかもっとやれ。

@ hpcmips で Emacs20

日本語が ????? となっていて任意の一定期間悩んだが、



(set-langage-environment "Japanese")

(set-display-coding-system 'euc-jp)

とやったら表示されるようになった。

あと、yc.el を設定したら日本語入力もできるようになった。

なんとか人並の環境になってきたぞ。

@ ところで

NetBSD/hpcmips で CAPS と CTRL を入れ換えるにはどうすれバインダー (*1)

Google <BSD> で検索してはみたものの、pcvt を使用してカーネルを再構築して云々…、 というものばかりてそれは i386 限定技じゃないノーという感じなのであった。

X 限定なら、.Xmodmapに



keycode 37 = Caps_Lock

keycode 66 = Control_L

でいけるような気がするけど。…どうだ。

だめでした。
-----
*1:(C) sugich さん


2000.11.16 (Thu)

@ [hpcmips]疑問質問

NetBSD/hpcmips な MobileGearII で、内蔵の PHS アダプタを使って通信できている人は いるのだろうか?

@ [mhttpd]環境変数

環境変数に関しては、こがさんがメールでわざわざ書籍からの抜粋を送って下さいました。 あとポインタとして、 (http://web.golux.com/coar/cgi/) を教えて下さいました。

@ [mhttpd]CGIのサポート

無事に MoinMoin が動いてよかったです。:D

Cake的には昔から、「フルセットの tds が動くようになる」というのがひとつの到達点と してあるんですが、それにはやりかけで放ってある SSI のサポートも必要になってくるので…。

@ [hpcmips]CAPS <-> CTRL

いろいろな方から、いろいろな媒体で教えていただきました。:D

コンソールでは



 # wsconsctl -w encoding=jp.swapctrlcaps

Xでは



<< ~/.Xmodmap >>

remove Lock = Caps_Lock

remove Control = Control_L

keysym Control_L = Caps_Lock

keysym Caps_Lock = Control_L

add Lock = Caps_Lock

add Control = Control_L

こっちは xmodmap のマニュアルにありました。

うーん、あとはXで jp106 になればなー。



 % xkbcomp -xkb :0 -o server.xkb

 % vi server.xkb

 % setxkbmap -config server.xkb

とかかなー? XKB システムについて全く分かってないんですが。

@ [hpcmips]

Xhpc を終了するときにコンソールが発狂する事故が二度ほど起こった。

xmodmap でキーアサインをいじるようにしてから立て続けなので、 ひょっとしたら関係しているかも知れず。

MGL2 は Emacs20.7 でなにかの拍子に Segmentation fault を起こす。 はっきりと再現できないが、どうも表示できないコードを表示しようとしてコケる、という挙動に見える。

mgterm で Emacs20.7 を動かしていると、メタキーが効かないくさい。 M-x と操作してもミニバッファには -? と表示されるのだ。M-x M-x と二回やると謎な漢字が入力されてしまう。 なんだろうと思って何度かやってみるうちに Segmentation fault 。


2000.11.18 (Sat)

@ [hpcmips]Squeak on MGL2

Squeak を MGL で動かすテスト。まずは母艦の MGL/X の上で試し。

以下の手順は行き当たりばったりにやってみたらできたというだけなので、 正式にはもっとましなやりかたがあるはず。

Squeak-2.7 の ソース (*1) 、イメージ、チェンジファイルをダウンロードしてくる。

(ftp://ftp.inria.fr/INRIA/Projects/SOR/users/piumarta/squeak/SqueakV2.sources.gz) (ftp://ftp.inria.fr/INRIA/Projects/SOR/users/piumarta/squeak/Squeak-2.7.image.gz) (ftp://ftp.inria.fr/INRIA/Projects/SOR/users/piumarta/squeak/Squeak-2.7.changes.gz)

これらのうちで必須なのは image だけ。動作の確認という意味では他はいらない。

Unix 用の VM のソースコードをダウンロードしてくる。

(ftp://ftp.inria.fr/INRIA/Projects/SOR/users/piumarta/squeak/Squeak-2.7-src.tar.gz)

ディレクトリを掘って (*2) VM のソースを展開する。



 $ mkdir squeak-2.7; cd squeak-2.7

 $ tar zxvf ../Squeak-2.7-src.tar.gz

mgl2-alpha-019 付属の sqMgl.c をソースツリーに放り込む。



 $ cp ../mgl2-alpha-019/contrib/squeak/sqMgl.c src

ビルド用のディレクトリを準備して configure。



 $ gmake mkdir

 $ cd i386-unknown-freebsdelf3.4

 $ ../src/configure

Makefile をちこっと修正する。



-INCS=           -I. -I$(SRCDIR) -I/usr/X11R6/include

+INCS=           -I. -I$(SRCDIR) -I/usr/X11R6/include -I/home/cake/src/mgl2-alpha-019/lib



-LIBS=           -lX11 -lXext -lm -L/usr/X11R6/lib

+LIBS=           -lX11 -lXext -lm -lmgl2 -L/usr/X11R6/lib -L/usr/local/lib

あとなぜかマクロ ``SQVERSION'' の展開に失敗するっぽいので sqMgl.c にも手を加える。



--- src/sqMgl.c Sat Nov 18 02:39:19 2000

+++ ../mgl2-alpha-019/contrib/squeak/sqMgl.c    Tue Sep  5 18:04:57 2000

@@ -852,7 +852,7 @@

   printf("  -version             print version information, then exit\n");

   printf("  -xasync              don't serialize display updates\n");

   printf("\nNotes:\n");

-  printf("  <imageName> defaults to 'Squeak2.7.image'.\n");

+  printf("  <imageName> defaults to 'Squeak"SQVERSION".image'.\n");

   printf("  Using 'unix:0' for <dpy> may improve local display performance.\n");

   printf("  -xshm only works when Squeak is running on the X server host.\n");

   exit(1);

@@ -912,7 +912,7 @@

   if ((ev= getenv("SQUEAK_IMAGE")))

     strcpy(shortImageName, ev);

   else

-    strcpy(shortImageName, "Squeak2.7.image");

+    strcpy(shortImageName, "Squeak"SQVERSION".image");

 

   if ((ev= getenv("SQUEAK_MEMORY")))

     initialHeapSize= strtobkm(ev);

一気にビルド。



 $ gmake all

すると最後のリンクの段階で sqXWindow.o と sqMgl.o が干渉してコケるので、 sqXWindow.o をリンク対象から外してやる。



 $ gmake >foo

 $ vi foo

 $ sh foo

foo の内容はこんな感じ。sqXWindow.o や -lX11 、 -L/usr/X11R6/lib などの X11 ゆかりのものを とりあえず削ってみた。



gcc -rdynamic -o squeak \

   interp.o sqADPCMPrims.o sqFilePrims.o sqMgl.o sqMiscPrims.o sqOldSoundPrims.o \

   sqSoundPrims.o sqUnixAsyncFilePrims.o sqUnixDirectory.o sqUnixExternalPrims.o \

   sqUnixJoystickAndTablet.o sqUnixNetwork.o sqUnixSerialAndMIDIPort.o sqUnixSound.o \

   sqVirtualMachine.o sqUnixVersion.o \

   -lm -lmgl2 -L/usr/local/lib

これでなんとか squeak が出来上がる。テスト起動。



 $ ./squeak Squeak-2.7.image

すごいですねー、本当に MGL で動いていますねー。

記念写真(Jpeg,25KB)

ZeroDivied なデバッガが起動しているけどこれは画面が狭すぎてエラーしているのかも。 本来は、X 用の VM 上でウィンドウの整理をしたりしてから起動するのがいいとは思う。

しかしこんなやりかたで動くものができたことの方が、ある意味凄いとも思うが。

あと、MGL/X 上で不便なのは、ついボタン2とかボタン3とか押してしまって、 ウィンドウが くるくる回転 してしまうこと。うう、アホっぽい。

-----
*1:Smalltalk クラスライブラリのソースコード。統合環境の中でブラウザから参照する。
*2:カレントディレクトリにぶちまけられないように


以上、5日分です。

[Top] [PocketBSD] [シュミプロ] [ぽめれちょう掲示板] [きまたま日記] [最新版] [一覧] [戻る]


このページはTsDiarySystemを用いて生成されています。

Cake (SHIMADA Keiki)