hogeとはワイルドカードのようなものです。日々起こった、さまざまなこと −すなわちワイルドカード− を取り上げて日記を書く、という意味で名付けたのかというとそうでもありません。適当に決めたらこんな理由が浮かんできました。
11/04/2002 Gentoo [長年日記]
tDiary 11日目
■ Xfree86-4.2.1-r1
全く勘弁してくれよー、emerge -u worldやったらイキナリXfreeのコンパイル始まっちゃって、しかもコンパイルエラーで終わっちゃったよ。コレがGentooの最大の欠点だね。貧弱マシンにはキツイわ…。
只今ソース解読してエラー元を追跡中。Xの膨大なソースを読むハメになるとは思わんかった、あーキツイ。
■ 続Xfree86-4.2.1-r1
…てなわけで発見。Xfreeの開発者ともあろうお方がこんな初歩的なミスを犯していたとは…。xc/lib/X11/lcUniConv/gbk.hの3155行目のunsigned short wc = 0xfffd;、コレが悪さしてたみたいね。「変数宣言はブロックの最初に書かなければならない」という法則に引っ掛かったらしい。何もないブロックが宣言されてるってことはここに入れるべきものだったんだネ! BugFixしたときにミスでもしたのかな?unsigned int i = 190 * (c1 - 0x81) + c2; if (c2 >= 0x80) i -= 0x41; else i -= 0x40; /* End of internal compiler error fix */ unsigned short wc = 0xfffd; { if (i < 23766) wc = gbk_2uni_page81[i]; } if (wc != 0xfffd){ *pwc = (ucs4_t) wc; return 2; }の部分を
unsigned int i = 190 * (c1 - 0x81) + c2; if (c2 >= 0x80) i -= 0x41; else i -= 0x40; /* End of internal compiler error fix */ { unsigned short wc = 0xfffd; if (i < 23766) wc = gbk_2uni_page81[i]; if (wc != 0xfffd){ *pwc = (ucs4_t) wc; return 2; } }…と書き換えて解決。あとはMakefileにバグが潜んでるっぽい。あーかったるい。
■ 続々Xfree86-4.2.1-r1
Makefileのバグも解決。xc/programs/xkbcomp/Makefileにバグが潜んでました。$(BUILDBINDIR)/xkbcompっていうターゲットで、xkbcompっていうプログラムをリンクするらしいんだけど、インストール時にこれがされてないためにNo such file or directoryなエラーが出てたんだネ! ってなわけで、もう面倒臭いからinstall::なターゲットに全部上記のターゲットを加えました。そしたらうまくいったみたい。
対処方法が間違ってるような気もするけどまあ気にしない気にしない。コンパイルさえ通れば正義なのさ。