As Sloth As Possible

可能な限りナマケモノでありたい

タグ:Leopard

この間Cocoaセミナーに行って来たときに、面白い現象を見つけたので忘れないうちにメモ。

最近はもうずっとことえりを使わずにAquaSKKを使っている。SKKに慣れてしまうともう他のIMEを使う気になれないのだけど、Unixは言うにおよばずMacでもWinでもSKKがあるので、どこでも同じ操作感で日本語入力が出来て快適!もう手放せない!

Leopardにアップグレードしたときは若干不安ではあったんだけど、今日に至るまでこれと言った問題もなく動いて来たので特に気にせず使ってきた。

GCを有効にするとあれ…?

ところが、こないだついにAquaSKKが使えない事態に遭遇した。Cocoaセミナーでは演習と称してRSSリーダーを作っていたのだけど、Xcodeのコンソールでログを見てたら、どう見ても自分のアプリと無関係なエラーログが表示された。

2008-02-23 15:40:44.392 CoreRSSReader[625:10b] Error loading /Library/InputManagers/SIMBL/SIMBL.bundle/Contents/MacOS/SIMBL:  dlopen(/Library/InputManagers/SIMBL/SIMBL.bundle/Contents/MacOS/SIMBL, 265): no suitable image found.  Did find:
	/Library/InputManagers/SIMBL/SIMBL.bundle/Contents/MacOS/SIMBL: GC capability mismatch
2008-02-23 15:40:45.051 CoreRSSReader[625:10b] Error loading /Library/Components/AquaSKKInputMethod.component/Contents/MacOS/AquaSKKInputMethod:  dlopen(/Library/Components/AquaSKKInputMethod.component/Contents/MacOS/AquaSKKInputMethod, 262): no suitable image found.  Did find:
	/Library/Components/AquaSKKInputMethod.component/Contents/MacOS/AquaSKKInputMethod: GC capability mismatch

んん?SIMBL?AquaSKK?なんでなんで?

もちろんセミナーでSIMBLでプラグインを使うような高度なものを作るわけないし、テキストフォームだってIBでNSTextFieldを使ってるだけで別にオレオレカスタムViewでも何でもない。で、よく見たらGC capability mismatchと。ああなるほど。セミナーで作ったアプリはGCを有効にしてコンパイルするように言われたのだけど、SIMBLやAquaSKKはGC無効でコンパイルしてあるはずなので、それで読み込めてなかったのか。てことは、SIMBLやAquaSKKをGC有効にしてコンパイルすれば不整合が起きず普通に日本語入力できるようになるわけだ。

あれ、でもさぁ

確かLeopard発売当初はSIMBLが使えなかったのだけど、今はSIMBLもLeopard対応してるし、AquaSKKは当初からSafariやMail.appでも日本語入力できてた。てことはLeopardの標準アプリはGCを使ってないということだろうか。じゃあ、逆にAquaSKKをGC有効でコンパイルすると普通のアプリで使えなくなりそうだけど、その辺どうなんだろう。あとで調べてみるか。

ここんとこMacPortsをメインに使ってたので気付いてなかったのだけど、GHCをインストールしたくなって、でも確かあれは「ソースからコンパイルはしてはいけない」って言われてたよな、MacPortsじゃない方法で入れたいな、と思って見に行ったらFinkのLeopard対応始まってた

まだバイナリのダウンロードはできないみたいだけど、どのみちいつもソースから入れてるのであんまり関係ない。何かと便利なので入れておこう。

また新しいのが出てたので、こないだTigerを入れ直したばかりのMac miniをまっさらにして入れてみる。なんだか最近OSのセットアップが週末の習慣になってる気がする。なにかあったらすぐOS再セットアップ。気分転換にOS再セットアップ。なんだその変な趣味。おかげでMacOSXの再セットアップには大分手慣れてしまったよ。

で、Leopardの最新Preview版。すごい。興奮して鼻血出そう。新インターフェースはWWDCとかで発表されてる通りなんだけど、なかなかにインパクトあるよ。まだ最適化が足りないのか、1.83GHz Core Duoでメモリ512MBのMac miniでは若干重かったけども。あと、半透明のメニューバーは視認性悪いな。

具体的なことは多分ここには書けない*1のが残念なのだけども、もう発売間近なので皆さんお楽しみにということで。アプリの互換性とか検証してみよう。あとObjective-C 2.0だなぁ。あとでADCのリファレンス読んでみよう。

*1:ってかどこまで書いていいのかわかんない。規約確認しないと。

Leopardのプレビュー版をMac miniに入れてたんだけど、そもそも「使って試せる」レベルのものじゃなかったし、既に発表されてる新機能もまだ取り込まれる前のものだし、本腰入れていじってる暇もないしなと思いもう一度Tiger入れなおしてサーバにすることにした。

vim、zsh、Ruby、Apache、Subversionあたりは最新版をソースからインストールして、その他の必要なものは面倒なのでFinkを使って入れてたんだけど、mod_dav_svnを組み込んだApacheを起動させようとしたところでこんなエラーが。

httpd: Syntax error on line 53 of /usr/local/apache2/conf/httpd.conf: Cannot load /usr/local/apache2/modules/mod_dav_svn.so into server: Library not loaded: /sw/lib/libexpat.0.dylib?n  Referenced from: /sw/lib/libaprutil-0.0.dylib?n  Reason: Incompatible library version: libaprutil-0.0.dylib requires version 6.0.0 or later, but libexpat.0.dylib provides version 2.0.0

libexpatが古いのか。Finkが勝手に取り込んでくれるライブラリは若干古いから気を付けてないと。となると依存ライブラリも自分で保守しなきゃならなくなって結構面倒くさいなぁ。でもFinkからだとコンパイル時の細かい設定できなそうだし、ApacheやSubversionは評価や導入の練習も兼てできれば最新のものを使いたい。さてどうしよう。

…あれ。いや、待て。そういえばApacheもSubversionもソースから入れたのになんで/sw/lib/libaprutilを見てるんだろう。ていうか/sw以下のライブラリ同士で依存関係の不整合が起きてるのは何故?なんかどっかで手順間違えたかな、俺。

↑このページのトップヘ