2006年8月18日から2006年8月14日までの日記を表示中
2006年 8月18日 (金)
■病院行ってみた
起きたらさらに昨日より悪い感じだぞ(;´Д`).もう薬の力を借りるしかない.というわけで病院に行ってみることにしました.実は去年事故って救急車で運ばれたのを除くと,ここ数年(下手したら10年くらい?)病院に行って診療を受けたことが無い気がすんですよね・・・.しかも引っ越した先なんで,どこにどんな病院があるのかよく知らんし・・・.
とりあえず近所の内科まで行ってみたんですが,商店街の中という立地がいいのか,小児科とかがセットになってるからなのか,大混雑で待合室の椅子に空きが無いんじゃって感じだったのでパス・・・.そこから近所の耳鼻咽喉科(何故か昨日ヒタヒタさんが調べてくれた)に行ってみたわけなんですが,見事にシャッターが下りていて夏休み中との張り紙がorz.炎天下往復40分位歩いたか?きつい・・・.で,一旦帰宅してググったら,家の近くに別の内科があることを発見したので,そっちに行ってみるもののやっぱり夏休み_|‾|○.そうこうしている内にお昼になってしまい,最初に行ってパスした内科で診療受けるには夕方まで待たないと・・・.
・・・というのも辛いので,結局車でちょっと離れた市民病院まで行って診療受けてきました.まー結構待たされた挙句診療は一瞬でしたが,ちゃんと薬処方してもらえて,飲んだら効いたんで良かったっす.この半分の量でいいんじゃーねーかって気はしますが・・・.
2006年 8月17日 (木)
■喉
朝起きる度に状態が悪化している説.今日はよりヤバい・・・.というわけで寝込んでました.はぁ・・・.
[コメントを書く]
2006年 8月16日 (水)
■喉が・・・
起きたら昨日より喉が痛いし(´・ω・`).
[コメントを書く]
■x86_64 vs Emcws-21.3 + Wnn7
どうにかビルドできたx86_64環境のEmcwsですが,Wnn7で入力しようとすると,サーバと通信し始めたところでセグって落ちます.もしかしてEmcwsってWnn7ダメなんだっけ?とググってみたら自分の日記に「できた」と書いてありました・・・.そうなのかー.あ,確かに32bit版だと動くわ.
早速gdbで見てみたところ,何やら「get_pwd」という関数でセグってます.何か引数のポインタがポインタっぽくない値(0x100000000)で,そこを読もうとして落ちてました.なんじゃこらと手繰ってみると,このまずい引数自体はEmcws側の「Fwnn_fisys_dict_add」から「jl_fi_dic_add」に渡されてる模様・・・.あれ?でもここでは定数0を渡してるよなぁ.何で0x100000000なんかになるの?ULとかつけなくても関数の型宣言見てコンパイラが適当に64bitとしてくれたりするんですよね・・・違うっけ?
とりあえずヘッダを見てみるかということで,Wnn7SDKのjllib.hを見てみると・・・
extern int jl_fi_dic_add();
extern キタ━━━(゜∀゜)━( ゜∀)━( ゜)━( )━( )━(` )━(A` )━('A`)━━━…‥ _|‾|○
えーと,つまり,Emcwsのsrc/wnnfns.cは引数の型を決め打ちで処理しているということか?ううう,何でヘッダに型を書いといてくれないわけ・・・?けちだなぁ.scim-wnnはどうしてるのかなーとソースを覗いてみたらsrc/wnnproto.h に自前のプロトタイプがいっぱい書いてありました.な,なるほど.
仕方ないので必要な関数のヘッダを自前で用意するかねぇ.jl.cやjs.cから適当にawkで抽出できるかな・・・
static int jl_fi_dic_add_e_body(env, dic_name, hindo_name, suflag, rw, hrw, pwd_dic, pwd_hi ndo, error_handler, message_handler) register struct wnn_env_int *env; char *dic_name; char *hindo_name; int suflag; int rw, hrw; char *pwd_dic, *pwd_hindo; int (*error_handler)(), (*message_handler)(); {
K&R キタ━━━(゜∀゜)━( ゜∀)━( ゜)━( )━( )━(` )━(A` )━('A`)━━━…‥ .というわけで自分でやるのは早々に諦め前にtkngさんがメールにちょろっと書いていたcprotoってやつを使って抽出してみました.すげ,超簡単.
作ったjs.cとjl.cの関数宣言をemcwsのsrc/wnnfns.cでincludeしてやったところ,型が合わないところがボロボロと・・・.つか引数の個数違うところとかあるし.実は32bit版もヤバいんじゃ・・・.src/wnnfns.cをいじって,jllib.hの入力予測関連の関数の半端に嘘が書いてあるexternをザックリ消したら,無事x86_64環境でもWnn7で入力できるようになりました.あー,疲れた.まあ,こんなもん未だに入れてる自分もあれですが,やっぱヘッダくらい欲しいよなぁ.つかWnn7なんかもうやめようぜ・・・.もしくは素直にななたまご使うとかさぁ.なんて自覚せずに使ってる人に伝えるのは難しいんですよねぇ.
[コメントを書く]
2006年 8月15日 (火)
■体調悪い
風邪でした.怠くて喉痛くて昼間は何もできず.しっかり布団かぶって寝直したところ,汗が出て夕方には大分楽になりましたが,それでもまだちょっとしんどい・・・.
[コメントを書く]
■無線LAN
寝てるそばでPCいじりてーなーというどうしようもない理由から普段は電源切ってる無線LANのステーション(BUFFALOのWLA2-G54)をつけたわけですが,再び全然起動しない病が発生.症状としてはまさにこれ.何でダメなのかまったくわかりませんが,とにかく電源をつないでも,正常時は起動後すぐ消えるはずのDIAGとAOSSがずーっとついたままで有線は物理的にリンクさえしてくれません.ACアダプタのプラグを軽く差したり抜いたりしてるとまれにDIAGとAOSSが消えて有線のポートがリンクするんですが,その状態で他からpingを打つと,2〜3発反応したところでだんまり.もうだめだとサポートセンターに電話しようとしたんですがつながりませんでした(´・ω・`).くそー.まあ,つながってもあんまいい思いしない気がしますが.
その場では結局長いケーブル引っ張り出してきてどうにかするというもっとどうしようもない対処を取ったわけですが,やっぱ悔しいので夜になって再挑戦してみました.ACアダプタは,本体側のプラグよりもコンセント側を軽く抜き差しした方が有線リンクに到達する可能性が高いということが発覚.たまたまかもしれませんが.でも,この状態でも数秒で再びDIAG・AOSSつきっぱなし状態にもどっちゃったりしてやっぱりだめ・・・と思ったら十数回目にしてついに起動.原因がよくわからんのですが,最新のファームウェアを入れ直してみても何も状況は変わらずです.うーん,起動してからの機能は文句無いんですが,起動するまでがこれじゃ・・・.
[コメントを書く]
■OpenBlockSのHDD死亡
一向に上がらない無線LANステーションと格闘してる途中で,OpenBlockSのログを見てみようと思いsshでつなごうとしたら無反応・・・.NATとかDNSは生きてるんで,またディスクがおかしくなってdmesgがでまくってるとかそんなんか?と本体の電源を入れ直してみたところ,見事に起動しなくなってしまいました(;´Д`).シリアルでつないでみたら,起動途中でディスクエラーのメッセージが延々と流れてます.こりゃだめだと再度電源を入れ直したら,今度はなんかディスクがひどい音を立てFLASHからも上がらない・・・orz.ひとまずADSLモデムの方のルータ機能を有効にしたんで外には普通に出られますが家の中のマシンとかの名前をひけないのは不便だなぁ・・・.やっぱ普通の2.5インチHDDはだめですかねぇ.マイクロドライブにすっか?
[コメントを書く]
■x86_64 vs Emcws-21.3
x86_64環境ですが,Emcwsは実はちゃんとビルドできてなかったことが判明.終了時に「wnn-server-isconnect」なんてありませんとか言われて刺さったりします.なんでかと調べてみると,そもそもemcwsがcanna・wnn非対応でビルドされている模様.でもconfig.logを見ると検出されてるように見えるんだよなぁ.
とりあえずsrc/config.hがおかしいよぅ.src/config.h は src/config.in から作られるんですが config.statusを実行してもsrc/config.inの「#undef LIBS_MULE」が「#define LIBS_MULE -lwnn -lcrypt -lcanna」に置き換わらないのが謎です.そこで,config.statusの中でやってるsedの置換を追いかけてみた所,置換対象について
/^[ ]*#[ ]*undef[ ][ ]*[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*[ ]*$/b def
なんて条件がありました.emcwsのパッチ当てた状態だと,src/config.inには
#undef LIBS_MULE /* special library for Mule */
みたいな感じに後ろにコメントが書かれてて反応しなかったわけですな.というわけで,普通に以下のようにしてやった所・・・
/* special library for Mule */ #undef LIBS_MULE
あれ,まだだめじゃん.sedしてるところだけを抜き出して実験してみたんですが,置換されません.もしかしてこの書き方でもまずいのかと置換のパターンをよく読んでみると・・・
s,^\([ #]*\)[^ ]*\([ ]*LIBS_MULE\)[ (].*,\1define\2 -lwnn -lcrypt -lcanna ,
・・・(;´Д`) 「LIBS_MULE」の直後にスペースかタブか括弧が無いと置換されねーのかよ・・・.あー,autoconf.m4fにそれっぽいのが書いてあるなぁ.
ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' ac_dB='\\)[ (].*,\\1define\\2' ac_dC=' ' ac_dD=' ,']
もしかしてこれってautoconf-2.60が悪いのか?ってことで2.59の方を見たらなんか全然違うんですけどこの辺・・・.試しに2.59でautoconfしなおしたら,見事にcanna・wnnに対応したemcwsがちゃんとできました.あえて言おう.autoconf-2.60のバグちゃうんかこれホイショ.
[コメントを書く]
2006年 8月14日 (月)
■風邪か
起きたら喉痛いし.昼間は割と平気だったんですが,夜になってまた怠く.疲労かなぁ.あるいは暑いってんで布団かけずに寝てるからか?もしかして緊張の糸が切れたから?まさかねぇ.風邪ひきそうひきそうと言いつつもずいぶんひいてない気がする・・・.
[コメントを書く]
■グラV
ネットで公開されてるグラディウスVのプレーを見てるうちに遊びたくなり引っ張り出してしま・・・いたいところなんですが相変わらずプレステ2が実家なので遊べません(´・ω・).PS3をすぐに買わないことにして,PS2買っちゃおうかなぁ.ちなみにグラVは未だ1周したこともないヘタレです.10周目のプレイとか見てたら目が痛くなったし.
[コメントを書く]
■Zaurus
コミケの待機列で使ったんですが(といっても電波状況悪い中w3mでmixi見たくらいですが),やっぱ外だと液晶の反射がヤバすぎて辛いですね.どう角度変えても鏡かってくらい映り込みまくり.目が超疲れました・・・.映り込みをどうにかしてくれる保護シートって無いんですかね.調べたら,今貼ってるブリリアント何とかってやつも反射を抑えてくれるとかありますけど,あんまり貼る前と変わった感じがしないんだよなぁ・・・.
[コメントを書く]
2006年8月18日から2006年8月14日までの日記を表示中
[コメントを書く]