2008年5月25日日曜日

[Linux][Fedora][Wine]Fedora9 所感 その1

さて、今週1週間で分かったことや解決した事をつらつら書いていきたいと思います。
長くなるだろうということで、ある程度まとまったテーマごとで区切ります。
その1はWineに関する話題です。ひょっとするとFedora8でも同様かもしれませんが、もう確認する術もないので、現時点での状態ということでお話しします。
まず、文字化けについてですが、つい先ほど解決しました。wineでは、
$HOME/.wine/drive_c/windows/fonts
以下にttfファイル、あるいはそのシンボリックリンクを作成すればそのフォントをwineによって実行中のアプリケーションで利用することができます。また、wine用のレジストリを書き換えることで、フォントの置換テーブルを作成する事ができます。
で、私はWineのフォント置換テーブルに、MSフォントをIPAモナーフォントで置き換える、と指定していたんです。ところがFedora9になった時点で、肝心のIPAモナーフォントが消え去ってしまっていました。KDEのフォント管理では見えているのでどっかに保存されているのは間違いないんですが、日本語フォントが格納されているシステムパスを確認しても見つからず・・・。Fedora8からはフォントの管理パスが変わったことは知っていたんですが、Fedora8では問題なく動いていたんですよね・・・。
で、仕方ないので一度レジストリファイルであるuser.regファイルをリネームし、初期状態にしてWindowsアプリをwineで起動してみました。
すると文字化けも発生しませんでした。で、そのときの設定ファイルを確認したところ、特にフォントの置換は何も行っていませんでしたが日本語が綺麗に表示されていたので、オリジナルのuser.regファイルのフォント置換部分を削除。そしてuser.regを元に戻して再度アプリを起動。
・・・、かくして無事に(?)綺麗なUIを取り戻すことができましたとさ。Wineのバージョンアップによってフォントまわりの設定方法やらなんやらが変わったんですかね? まぁちゃんと表示されるようになったので一安心です。
ついでに、インプットメソッドがover the spotでも問題なくなっているようです。rootよりover the spotがよろしい方は修正してみてはいかがでしょうか。個人的には安定して動くならどっちでもいいです^^;
ただ、このWineのバージョンにバグでもあるのか、Fedora8まで動いていたいくつかのWindowsアプリケーションが動作しなくなってます。oggenc.exeが動かなくなってしまったのは辛いですね・・・。foobar2000は動いてるんですが、そこからエンコードできません;;まぁタグ付けとReplayGain用と割り切る他ないですかね。mp3からoggへの変更がほとんどなんですが、それについてはLinuxでも問題なくできますしね。ReplayGainも探せばありそうなので探しておこう。AmarokにはReplayGain設定用拡張が入ってるけど、あれアルバムタグ入れられるか分からないのよねぇ。タグから判断してくれたらいいんだけど・・・、もちっと英語の勉強して解説読んでくるかOrz
おっと、横道にそれましたが、なにやらWineのこのバグは去年にも発生している模様。つーことで、そのうち修正されるとは思います。動くものと動かないものの差はどこにあるか分かりませんでしたが、
preloader: Warning: failed to reserve range 00000000-60000000
preloader: Warning: failed to reserve range 00000000-60000000
err:dosmem:setup_dos_mem Cannot use first megabyte for DOS address space, please report
preloader: Warning: failed to reserve range 00000000-60000000
wine: could not load L"H:\\hogehoge.exe": Invalid address

のようなエラーが出た場合、現状では諦める他ないようです。それ以外のエラーならば、DLLなどを揃えたら動くかもしれません。ケースバイケースなので気合で頑張るしかないですが。
さて、Wineの話題はここで終了。その2は次のエントリにて!