Qt 4.5.1

まあたまにはふつうに OS/2 ネタ書くか…移植が進んでいた Qt4 のランタイムも正式(GA)版が出ました(その後 QtCore の修正版がでたりしたのはご愛嬌)。

素直にめでたいのですが、いくつか注意点もなくもない。

  • 以前リリースされたランタイム(の開発キット)用にビルドされたアプリケーションは GA 版だと動作しない。再コンパイル必須。
    ftp://ftp.netlabs.org/pub/qtapps/ にあるアーカイブの日付を見るとわかるが GA リリースにあわせてのきなみ修正されている。逆にいうと GA ランタイムより日付の古いアプリはまず間違いなく使えない。たとえアーカイブのファイル名がまったく同じでも、日付が更新されていたらダウンロードしなおしたほうがいい。
  • 以前(beta5 まで)は Qt の設定がレジストリ中に保存されていた。現在は ini ファイルに書き込まれる(環境変数 HOME は必ず設定しておく必要がある)。
  • 日本語の表示と入力には難がある。フォント設定をユーザー側で変えられるごく一部の例外的アプリを除いて、基本的に日本語は表示できないと思う。IME によるインライン入力はできない(入力フィールドがアプリ最下部になる)。
    (ちなみにその「ごく一部の例外」の中に SMPlayer があります。というかいま OS/2 に移植されてる Qt4 アプリの中では SMPlayer が唯一なんじゃなかろうか。某所にその唯一の例外のスクリーンショットへのリンクが張ってあったのでちょっと驚いた、というか不安になったのでした。アレを見た外人さんたちが「Qt4 ってそのまま日本語表示できるんだね」とか過度の期待と信用をしないことを個人的には祈りたい気持ちです…)
  • しまった、いちばん大事なことを書き忘れていた…通常の PM アプリと同じ方法(Alt-F4 や終了ボタン)で Qt4 アプリを終了してはいけない。Qt 標準のショートカット Ctrl-Q を使うか、アプリケーションのメニューからそれらしい項目を選んで終了させること。
    通常の方法で終了させた場合、おそろしいことにそのプロセスはゾンビ化してずっと常駐してしまう。ウソでないヨ、終了後に KILUU /LST すると残っちゃってるのワカルヨ! まあそれこそ KILUU で殺せるんですが、さすがに「正常終了」とは言いたくない感じだしなあ。

バイナリ非互換になっちゃったのはコンパイラ変わったせいかもしれない(gcc3.3.5→4.4.2)。コンパイラのせいかどうか確証はないけど、beta5 時代よりも動作のキレはよくなってるような気がする。あと netlabs のソースリポジトリは 4.6.1(Qt 本家最新リリース)相当になったので 4.5.1 はこの先、致命的なバグの修正を別として仕様追加はないかと思われ。

というか beta5 時代に移植した twitter クライアントのバイナリが GA 版だと落ちちゃうのがショックだった。いちおう最新版のソース使ってコンパイルしなおしたらまあ動いたけど firefoxtwicli 動かしたほうがレスポンスの軽快さも見た目もイイ感じでちょっと切なかった。ついでにいうと OS/2firefox から Windows に切りかえて Opera 上で動かすとさらに軽快でせつなさ炸裂。