コンピュータ

HP ProLiant ML110 G5 で NetBSD

NetBSD 3.x は,キーボード周りで止まる。

G4 のときは BIOS で 8042 Emulation Support を切ると起動したが,G5 はその設定が見当たらない。
NetBSD 4.x は,G5 だと起動しない。

http://mail-index.netbsd.org/port-i386/2008/11/22/msg000932.html
NetBSD 5.0_BETA は,今のところ問題なし。

current は,これから。

でまあ,G4 も G5 もなんかやたらと HDD が遅いのだが,

# dkctl wd0 setcache rw

で,普通の速さに。今は rc.local で無理やり全部のディスクを設定している。
あってるかどうかわからないけど,G4で1年間動かしたが特に問題なし。

ipfilter の keep state がうまく働かない

ipfilter で、外部からの接続をすべて拒否しつつ、内部からは何でもアリな以下のような感じの ipf.conf の設定(本当はもっといろいろ書いてあるけど)をしたとき,普通うまくいくんだけど,うまくいかないサーバが一台だけあった(NetBSD/amd64 4.0)。

block in on bge0 all
pass out quick on bge0 proto tcp from any to any 
flags S/SAFR keep state

まだちゃんと追ってないので原因はよくわからないけど、これでなおった。

ifconfig bge0 -tcp4csum

(/etc/ifconfig.bge0 で tcp4csum 指定してたので削除した)
wm とか re は tcp4csum 付きでも大丈夫っぽいんだけど、bge固有の問題?

Cubase 4.5.1 (VST Sound Collection vol.1)

tips
ダウンロードは,USのサーバが圧倒的に速かった。(日本語サイトからはリンクされてないけど)
http://www.steinbergmediacenter.com/
VST Sound Collection 入れても音色が選べない場合:
1. カテゴリを表示(●をクリック)。
2. 場所を表示(●をクリック)。
3. それっぽい名前の場所にチェックが入ってなければ入れる。
3′. チェックが入っているのにその場所の音色が一個もでない場合には,チェックを一旦外して(ダイアログがでたら「変更なし」)再度チェックを入れる。
同じハマりの人も多そうなのでメモ。
気付かなくて2回も修復インストール(計3回インストール)しちゃったよ・・・。
バグフィックスに関しては,直ってるバグと直ってないバグが半々かな。

Windows XP x64 Edition で Visio のデータベースモデル図を作成しようとするとハングする件

日本語で検索しても全然情報が出てこないが、visio database hang 等で(日本語のページに限定せずに)検索するといくつか情報が出てくる。
どうやらプリンタドライバに問題がある場合にハングする(応答なしになる)とのこと。とりあえず、適当に違うプリンタ(Microsoft XPS Document Writer)を指定してからデータベースモデル図を新規作成したらうまくいった。
Visio 2003でも2007でも同じ症状。OS が Vista x64 でも同じらしい。

たかがビルドでハマりにハマる

何台かでソースからビルドした NetBSD の /usr/bin/ld のうち一台だけ動かない。

$ ld
ld:built in linker script:1: ignoring invalid character `20' in expression
ld:built in linker script:1: ignoring invalid character `37777777646' in expression
ld:built in linker script:1: parse error

それぞれバージョン違いで,動かないのは netbsd-4 のツリーをビルドしたもの。netbsd-4 のバグかと思い,別のマシンにもたまたま netbsd-4 のソースが展開してあったのでビルドするとうまく動く。
あれこれやって,生成された eelf_x86_64.c がおかしいところまでは突き止めたが,何故おかしくなるかわからないので,ビルドログを比較してみると,エラーが出ているのを発見。

 #    create  ld/eelf_x86_64.c
unset MACHINE || true;  LIB_PATH=/usr/lib
/bin/sh /usr/src/gnu/usr.bin/binutils/ld/../../../dist/binutils/ld/genscripts.sh /usr/src/gnu/usr.bin/binutils/ld/../../../dist/binutils/ld /usr/lib "/usr"  x86_64--netbsd x86_64--netbsd x86_64--netbsd  elf_x86_64 /usr/lib no elf_x86_64 "x86_64--netbsd"
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory
+sed: stringify.sed: No such file or directory

その手前で stringify.sed が作られていない模様。

-#    create  ld/stringify.sed
-rm -f stringify.sed
-ln -s /usr/src/gnu/usr.bin/binutils/ld/../../../dist/binutils/ld/emultempl/astring.sed stringify.sed

で,結局あれこれいじっていると,/usr/src/gnu/usr.bin/binutils/ld/stringify.sed (シンボリックリンク)があるのを発見。既に存在するので作られないが,実行時に使われる /usr/obj/gnu/usr.bin/binutils/ld/stringify.sed がないというオチ。
結論としてはこんなかんじ。

  1. 何かの拍子に(過去に)ソースツリー内にシンボリックリンクを作ってしまった。(多分自分のミス)
  2. オブジェクトのディレクトリがソースのディレクトリとは別(NetBSD本体のビルドでは常にそうなる)であってもソース側にターゲットが存在してしまっているとオブジェクト側に作られない。(makeの仕様)
  3. ビルド中に使っている binutils/ld/genscripts.sh の中でエラーを起こしてもビルドが止まらない。(?)
  4. 結果として出来上がった eelf_x86_64.c が壊れているにも関わらず,コンパイルが通ってしまう。具体的には char * で内蔵 ldscript を返す関数が,stringify.sed がないせいで何も作られず,return; となってしまっているのにエラーにならない。(?)
  5. 存在しない戻り値(メモリのどこか)を ldscript だと思って読み込むが,当然ぐちゃぐちゃなのでエラー。

まあ発端は自分が悪いんだけど,バグで同じようなことが起きる可能性も考えると,ツール類も -Wall … -Werror つきでコンパイルできると本当はいいんだろうねえ。

おしえてMSのえらいひと

Office2003と2007の共存がしたい。
どっちかがあれば,もう一方のファイルも互換モードで開くのだが,2003と2007で交互に編集したりすると,いろいろおかしくなるのはお約束。PowerPointが特に顕著。
そこで,Office2007のインストール時に2003は消すのがデフォルトになっているのだが,残すようにしてみた。それで,例えば *.doc は Word2003 で,*.docx は Word2007 で開くのかと思ったらそうでもなくて,常に 2007 が動く。関連付けを変えようとしてもうまくいかない。
とか書くと,親切な人が「『ツール』→『フォルダオプション』で『ファイルの種類』を…」云々と教えてくれるのだが,それ自体がうまくいかないという話。2003 の方の WINWORD.EXE を明示して関連付けても Microsoft Office Word というアプリケーションとの関連付けと勝手に解釈して(?)新しい方が起動してしまうらしい。
しょうがないんで,

START "" "C:Program FilesMicrosoft OfficeOFFICE11WINWORD.EXE" %*

みたいなバッチファイルを作って,そのバッチに *.doc 等を関連付けすることでなんとか一応目的の共存はできるようになった。
ただ,これでわかったことは,2003使った後に2007使ったり,その逆をやると毎回インストーラが起動して「構成しています」とか何やら設定をはじめる。2007使った後の2003のインストーラはそれほど時間がかからずに終了するが,2003使った後の2007のインストーラは結構待たされる(1分以上?)。
なんとかなりませんかね,これ。

IBM System x3105 で NetBSD 4.0 が起動しない件

NetBSD 3.1 は動いてた。
4.0 にしようとしたら,

viaide2: couldn't map sata regs

といわれてwd0, wd1 が見つからずに死亡。
PR #38011 がそれっぽい。
http://www.netbsd.org/cgi-bin/query-pr-single.pl?number=38011
手で viaide.c にパッチ当ててみると wd0, wd1 は見つかったものの,正しく動いてないのか起動時の init が呼ばれるあたりで固まる。
ちなみにチップセットは NVIDIA nForce Professional 2000 MCP らしいんだが,nForce4 でいいんだよねこれ?(少なくともSATA周りは)
とりあえず 3.1 に戻す。
続く (?)

スーパーロボ子

合作。まあ手伝い程度ですが。
【ニコニコ動画】【公式リミックス祭】Rocks / JAM Project + スーパーロボ子
JAM Project「Rocks」の歌パートだけのmp3配布して,好きなようにリミックスしていいという大胆な企画ですが,歌がパワフル過ぎて苦戦してる人が多い感じ。(伴奏が負けてしまう)
祭なので伴奏下手でも何でも楽しめればいいと思いますが。

VOCALOID2 CV02 鏡音リン

かがみねりん?
かがみん+えーりん みたいな響き(違う)
いや,よくわかってないが。

続・チーターマン祭

昨日の夜でっち上げた。
VOCALOIDの調整はアクセントだけ。
伴奏はPad垂れ流しで素人くさいというか素人です。
一番苦労したのは,今回実戦配備した Adobe Premiere Elements 4 の動作がいろいろ変だったこと。コピー・ペーストで狙ってない場所にペーストされるとか,文字編集してると落ちるとか,いろいろ。
【ニコニコ動画】すきよ★チーターマン