Tue, 09 Aug 2005
Zeta1.0でいろいろ入れてる途中だが
vifm0.3というファイルマネージャーを入れようと思ったのだけれど、./depcomp
が無いと言われたのでautomakeを入れようとしたところautoconfが先だと言われた。今はautoconfでmake checkってしたところで、延々とテストちゅうです。
てゆーか、Endeavorの隣りのiMac G5から激しく熱が放射されてて冷房が効けーせんがね。おっと名古屋弁。まっきんから離れるとぐっと涼しくなるので気の所為では無いの。
久し振りのエントリがこんな内容でもどーせ離れ小島やしどーでも良ェんやぁ。てゆーか、もうこれ以上ぱそこんの前におれんて。
オチはありません。
Mon, 01 Aug 2005
今日覚えたgettextのおまじない
gettextによって国際化されたコマンドで、日本語のメッセージが出ない、あるいは文字化けする場合の対処方法。はまったのでメモしておく。
export LC_MESSAGES=ja_JP.UTF-8
export OUTPUT_CHARSET=ja_JP.UTF-8
ずっと前は$LANGの値を見ていたと記憶しているのだけれど…最近のgettextは、メッセージカタログ中に含まれるメッセージのエンコーディングと現在のロカールで期待されているエンコーディングが異なる場合、メッセージカタログ中のメッセージのエンコーディングを現在のロカールで期待されているエンコーディングに変換してくれるそうなのですが、Zeta1.0ではこのふたつめの方法は効果が無かったです。
Mon, 25 Jul 2005
Zeta1.0 今日の成果 wget
取りあえず、次のようにしてみた。リンク時にエラーが出て止ってしまいます。
CPPFLAGS=-I/boot/home/config/include LDFLAGS=-L/boot/home/config/lib ./configure --prefix=/boot/home/config --enable-static=yes --enable-shared=no --disable-ipv6;make
host.o: In function `gethostbyname_with_timeout_callback': host.o(.text+0x2bc): undefined reference to `gethostbyname' host.o: In function `gethostbyname_with_timeout': host.o(.text+0x30a): undefined reference to `__h_errno' host.o: In function `pretty_print_address': host.o(.text+0x3b6): undefined reference to `inet_ntoa' host.o: In function `lookup_host': host.o(.text+0x723): undefined reference to `inet_addr' host.o(.text+0x7e3): undefined reference to `__h_errno' collect2: ld returned 1 exit status make[1]: *** [wget] Error 1 make[1]: Leaving directory `/boot/home/Build/wget-1.10/src' make: *** [src] Error 2
次はリンクするライブラリにlibbind.soを加えて、もう一度。undefined referenceが減りました。もう少しかも。
host.o: In function `pretty_print_address': host.o(.text+0x3b6): undefined reference to `inet_ntoa' host.o: In function `lookup_host': host.o(.text+0x723): undefined reference to `inet_addr' collect2: ld returned 1 exit status make[1]: *** [wget] Error 1 make[1]: Leaving directory `/boot/home/Build/wget-1.10/src' make: *** [src] Error 2
試しに/boot/zeta/etc/develop/zeta-r1-gcc2-x86/lib/x86
以下でgrepしてみると、inet_addrやinet_ntoaという文字列を含んだバイナリファイルがたくさん引っ掛ります。やっぱり無い訳じゃないのに、どうしてリンク出来ないのだろう…このディレクトリにある共有ライブラリは全部、/boot/beos/system/lib
以下にある実体へのシンボリックリンクです。元のファイルがあるディレクトリをつらつら眺めてみると…こっちにしか無い、いかにもな名前のやつがありました。libnet.soのシンボリックリンクを作ってやり、リンクするライブラリに加えてみると…ひとつめで正解です。
Zeta1.0のパッケージングのミスということですね。ヘッダはあるけどライブラリがちゃんとした場所に無かったわけです。
Sun, 24 Jul 2005
Zeta1.0 今日の成果 lv
パッチは他所様の作ったものだし、それを成果などとは口幅ったいけれど、置いておくことにします。BeOS--Download-lv。パッチがもう簡単には入手出来ないかもしれないしね。パッチを当てなくてもエラーが出る箇所をコメントアウトすればコンパイル出来るけれど、それだと標準入力から読み込めないので、あまり意味が無いでしょ。あ、当然、オリジナルのパッチも一緒に置いてあります。
BeBitsに登録しても見向きもされないような気がするので、ここに。でも、普通に入っていて当たり前のコマンドだと思うのですけどね。wgetとか、普通に入っていそうなコマンドが入ってない。
Sat, 23 Jul 2005
Zeta1.0でw3mそのに
えー、何か、libposix.soってライブラリがあって、それをリンクしたらgetpass()なんて無ぇよってエラーが出なくなりました。色々ソースを弄る必要は実は無くて、普通にコンパイル出来ました。素敵。BeBits - w3mに登録しました。
コンパイル時のオプションで--disable-mouse
としないと表示が乱れました。インライン画像の表示は出来ません。make LIBS="-lbind -lsocket -lgc -lssl -lcrypto -ltermcap -lposix ./libindep.a"としました。最後のやつが無いとリンク時に色々盛大にあれが無いこれが無いと言われました。この時点でかなり悩みました。さらに先へ進めていくと、w3mのバイナリが出来た後、最後にw3mbookmarkをリンクする時に上手くいきません。悩んでいる際に間違ってmakeと叩いたらすんなりいきまして。理由は良く分らないけれど、コンパイル完了したから良いや。
ターミナルで使うものながらタブブラウジング対応で素敵。Control-tで画面の上のほうにタブが出ます。タブ間の移動は{と}。最初、ブックマークの文字化けで悩みましたが、oで設定画面を開き次のように設定したところ化けなくなりました(多分これらが影響しているはず)。
Display charset:unicode(UTF-8)
Default document charset:Japanese(EUC-JP)
Automatic charset detect when loading:ON
System charset:unicode(UTF-8)
System charset follows locale(LC_CTYPE):NO
ページャとして使う場合もlvより良い感じかも。