Wineを開けるときがついにやって来た

 LinuxやUnix上でWindowsプログラムを実行するための超人気ソフトウェアWineの1.0リリースが、15年の開発を経て目前に迫っている。

 Wineの開発リーダーのAlexandre Julliard氏によると、このまますべて問題なく進めば、Wine 1.0は15周年の2週間後にあたる6月20日にリリースされるはずだという。Wine上にインストールしてある程度動作可能なWindowsアプリケーションは現時点で約1,300あるものの、1.0リリースに不可欠なのはPhotoshop CS2、PowerPoint Viewer 97/2003、Word Viewer 97/2003、Excel Viewer 97/2003の4つだけだと考えられている。

 主にボランティアベースの取り組みであるWineではこれまで常に、広範な品質保証テストを行うためのリソースが不足していた。多種多様なWindows環境/Windows用アプリケーション/Linuxディストリビューションが存在するため、このことは意外と大きな問題だ。Wineがこれまでに膨大な年月をテストに費やしてきたのも、Wineが置き換えようとするWindows API(Application Program Interface)の文書化が不十分でWindowsのリリースごとに大きく異なるということがその主な理由だ。

 Julliard氏は次のように説明する。「(現在の状態に到達するまでにこれほどの時間がかかったのには)いくつかの理由がある。Windows APIが大量であること、あまり文書化されていないということ、トリッキーな振る舞いや副作用も大量で、アプリケーションがそれらに依存していること。またMicrosoftが新機能を追加し続けて、それらを採用するよう開発者に売り込むため(われわれにとっては有難いことに必ずしもそれらの売り込みが成功するとは限らないのだが)、常に変化する標的であるということもある。さらにアプリケーションに関しても、ソースコードが公開されていないためアプリケーションのどこでどのような問題が発生しているのか把握しにくく、不具合を明らかにすることが簡単ではないということもある」。

 またJulliard氏は次のように述べた。「Windows用のアプリケーションは数え切れないほど存在する。大抵の人が必要とするのはその内の1つか2つなのだが、その1つか2つがどれなのかは人によってみな異なっている。そのため信頼性の高い1.0を実現するためには幅広い分野のアプリケーションをサポートする必要がある。言い換えれば、実装において何らかの手っ取り早いショートカット的な方法を用いることはできないということだ。ショートカットを行えば別の何らかのアプリケーションのどこかに必ず不具合が起こる」。

 Wineをビジネス化している、Linux/Mac OS X上でWineを利用しやすくするプログラム「Crossover Linux/Mac」の開発元CodeWeaversでCEOを務めるJeremy White氏は次のように述べた。「Wineの実現がいかに難しいことなのかは、一般には理解されていないように思う。われわれがやっていることは、言わばWindowsの一からの完全な作り直しだ。何万人もの従業員を抱えるMicrosoftでさえも、Windowsの新版――後方互換性があると言われているVistaなど――のリリースは困難を極めるものだ。われわれのような、Microsoftとは比べ物にならない少人数のまとまりのないボランティアの集まりが同じ作業を実現するというのがどういうことなのか想像してみて欲しい」。

 しかしそのような悪条件にも関わらずWineは何年のも年月を費やすことによって、よく使われるWindowsアプリケーションをLinuxユーザのPC上でも利用可能にしてきた。例を挙げれば、Microsoft Office 97/XP/2003のコアアプリケーションやInternet Explorer 6は、かなり以前からLinux上でもまったく問題なく利用することができるようになっていた。

 また完成度が高まるにつれて、通常のオフィスアプリケーションだけでなくゲームにもサポートが拡大した。例えばWorld of WarcraftやGuild Warsといった人気のオンラインゲームも今やWineでうまく動かすことができる。