Safari3 の WebKit のインストールについての改善案を勝手に考える
あんまし興味ないので Safari 3 はインストールしていないのだけれど、耳にした情報ではシステムの Webkit.framework を置き換えてしまうようだ(インストーラだけダウンロードして lsbom で確認)。rubycocoa-talk でも、Safari3 をインストールした状況でビルドがうまくいかないという報告がきていた。
新しい WebKit て、現在の Tiger のものと互換だっていうモノだったのだっけ?そうでなければ、こういった問題を回避する方法はあるよね。
その1、アプリケーションにフレームワークを入れる
MacOS X では、システム共通のフレームワーク(/System/Library/Frameworks, /Library/Frameworks)として以外にも、アプリケーションバンドル内にフレームワークを置くこともできる。そうすれば、他のアプリケーションに影響を与えることなく、Safari3 では新しい WebKit を利用することができるようになる。
Safari.app/ Contents/ MacOS/Safari Frameworks/WebKit.framework/...
その2、フレームワーク内に複数バージョンを入れる
もしくは、フレームワークバンドルには複数バージョンを入れることができるから、それを利用すればよい。ただ、フレームワークのバージョンをちゃんと利用しているのって見た記憶がほとんどない。ちょっと扱い難いのだよね、これ。
/System/Library/Frameworks/WebKit.framework/ Headers # Versions/Current/Headers へのシンボリックリンク Resources # Versions/Current/Resources へのシンボリックリンク WebKit # Versions/Current/WebKit へのシンボリックリンク Versions/ A/ # 今のWebKit B/ # Safari3用のWebKit Current/ # -> A へのシンボリックリンクのまま
| 固定リンク
最近のコメント