2002年5月 06日月曜日

am 19:17



まったく、このエラーの原因がまったくわからないぞ。
で、とりあえず動いたので、nxt230.tar.gz、Standard Editionとして、正式リリースしたが、なんか後になって、変な動きをしたのだ。
だもんで、nxt230-1 stableも残してある。
どっちも、Free BSDでは安定している。

せっかく、再インストールしたってのに。
しかも、mph-getの/var/mphはバックアップしたけど、データベースの方をバックアップしていなくて、またもや170MB近くを、ファイルがあるのにダウンロードしなきゃならない「トホホ」だってのに。

でも、このバグの原因はまったくわからない。
おそらくは、nxt230-0とnxt230-1とnxt230との差分になにかがあるに違いない。
ゆえに、すべて残してある。
でも、違いというと、条件コンパイルの部分ぐらいなのだが。
どこか間違っているとも思えないのだ。
#ifdef VFAT
........
#else
.....
#endif
とするか、それとも、
#ifdef VFAT
........
#endif
#ifndef
........
#endif
とするかで、動作が違うなんて、そんなのこっちのバグじゃないって言いたいね。
だもんで、Free BSDでは問題なく動くんだもの。
で、nxt230-1だと、デフォルトのnxtは安定するが、make altやmake vfatだと不具合が出て、nxt230だと、デフォルト nxtの調子がおかしい(時がある)。
だもんで、このnxt230はvectorなどでは発表できない。
完全に安定であると確認できる nxt231 まで待つように。
そんで、みなさんのご協力を願うのであった。
バグの原因がわかった人は、zkn001jp@yahoo.co.jpまでメールで教えて欲しい。
もちろん、nxt230などは、下のheadアイコンをクリックして表示されるへッドページの"Download"アイコンにある。
URLとしては、http://www.interq.or.jp/writer/knk/dwnldである。
もちろん、Winodwsでは対象にしていない。
Windowsを使っている人には、「そんな不便で、gccもないようなのは使わない方がいい」とだけ言っておく。
gccという「おもちゃ」もなしに、「悪のマニュアル」もクソもないと思うのだ。
だから、とりあえず、http-pingくらいは手にしておこう。もちろん、冗談で。
Free BSDだと、/usr/portsだったかな・・・

そんで、もしかすると、他のLinuxではnxt230-1もnxt230も、どちらも安定版かもしれない。
それだけ原因不明なのだ。

一体、これはなんだろう?
一体、私はどこを間違えたのだろう?
gdbの出番とか?
どうして?
条件コンパイルの問題で、しかも、Free BSDではなんの問題もないのに?
で、Free BSDでnxtを使う場合は、gnulsをインストールしてね。
それか、「俺は伝統のBSDを愛している」というひとは、nocolorでどうぞ。
そんで、シェルはbash(推奨)か、tcsh(Free BSDのデフォルトのはず)で。
zshでは不具合が出る。
その場合は、zshの側の設定をするか、もしくは、make altで(スペルミスだってわかっちゃいるが、面倒だったのでそのまま)、オルタードのコマンドで試してみよう。
やっぱ、nxt2.3.1を作らにゃならんだろうな・・・ スペルミスも含めて。

それはいいとして、オルタードだと、おそらく、zshでも、g@ではないので、それをメールアドレスだと勘違いしないだろう。
試していないんだけど。

しかし、よくわからないバグだ。
n@をサポートしていないnxt230-0だとまったく安定して動くが、n@をサポートした、nxt230-1やnxt230だと、make altやmake vfatそれから、デフォルトmakeで動作がことなるのだ。
nxt .. .. g@foo.txt r@ c@ .
で、変なゴミがくっつくのだ。そのために、コピーされない。
#ifdefを使わないで、それぞれのソースとMakefileを用意すべきなのだろうか?

それって、俺は悪くないよな。
なんか納得いかないのであった。
そういう、モヤモヤした想いのnxt230であった。