1. はじめに Wineは(DOS、Windows 3.x や Win32 実行可能ファイルを含む)Microsoft WindowsプログラムをUnix上で実行できるようにするプログラムです。 Microsoft Windowsバイナリを読み込んで実行するプログラムローダと、 UnixやX11同等物を使ってWindows APIの呼び出しを実装する(Winelibと呼ばれる) ライブラリから成ります。ライブラリはWin32のコードをネイティブな Unix実行可能ファイルに移植するのにも使えます。 Wineはフリーソフトウェアで、GNU LGPLのもとでリリースされています。 詳細についてはLICENSEというファイルを参照してください。 2. クイックスタート ソースからコンパイルするときにはいつでも、Wineをビルドしインストールするのに Wine Installerを使うことが推奨されます。(このファイル[訳注: README.jaではなく READMEというファイル]を含む)Wineソースのトップレベルディレクトリから、 以下を実行してください: ./tools/wineinstall "wine program"のようにプログラムを実行してください。更なる情報や 問題解決については、このファイルの残りの部分、Wineのmanページや、 特にhttp://www.winehq.orgで見つかる豊富な情報を読んでください。 3. 要件 Wineをコンパイルし実行するには、以下のうち一つを持っていなければなりません: Linux バージョン2.0.36以上 FreeBSD 7.0以上 Solaris x86 9以上 NetBSD-current Mac OS X 10.4以上 動作するためにWineにはカーネルレベルのスレッドのサポートが必要なので、 以上で触れたオペレーティングシステムだけがサポートされます。 カーネルスレッドをサポートする他のオペレーティングシステムは 将来サポートされるかもしれません。 Linux情報: Linux 2.2.xでまだ動作するはずであり、Linux2.0.xでまだ動作する かもしれないとはいえ(古い2.0.xバージョンにはスレッド関連のクラッシュが あります)、2.4.xや2.6.xのような現在のカーネルを使うことが最適です。 FreeBSD情報: FreeBSD 7.0以前のバージョン上でWineは次第に正しく動作しなくなるでしょう。 FreeBSD 6.3にはWineを実行できるようにするパッチが利用できます。 詳細についてはを参照してください。 Solaris情報: GNUツールチェーン(gcc、gasなど)でWineをビルドする必要がある可能性が 最も高いでしょう。警告 : gccがgasを使うことが、gasをインストールすることに よって保証されるわけでは*ありません*。gasのインストール後にgccを 再コンパイルするか、cc、asやldをgnuツールにシンボリックリンクすることが 必要だと言われています。 NetBSD情報: USER_LDT、SYSVSHM、SYSVSEMやSYSVMSGオプションがカーネルで有効になっている かどうかを確認してください。 Mac OS X情報: x86上で正しくビルドするにはXcode 2.4以上が必要です。 サポートされたファイルシステム: Wineはほとんどのファイルシステム上で動作するはずです。Sambaを通して アクセスしたファイルを使っていくつかの互換性問題が報告されています。同様に、 NTFSはいくつかのアプリケーションで必要なすべてのファイルシステム情報を 提供しません。ext3のようなネイティブなLinuxファイルシステムを使うことが 推奨されます。 基本的な要件: X11開発includeファイルをインストールする必要があります (Debianではxlib6g-devでRed HatではXFree86-develと呼ばれます [訳注: 最近のディストリビューションでは別のパッケージで置き換えられています]) もちろん"make"も必要です(大概はGNU make)。 flexバージョン2.5以降とbisonも必要です。 オプションのサポートライブラリ: オプションのライブラリがシステム上に見つからなかったときに情報を表示します。 インストールすべきパッケージについてのヒントについては http://wiki.winehq.org/Recommended_Packagesを参照してください。 64ビットプラットフォーム上では、これらのライブラリの32ビットバージョンを インストールするようにしなければなりません; 詳細については http://wiki.winehq.org/WineOn64bitを参照してください。 4. コンパイル wineinstallを使わないことを選択した場合、Wineをビルドするには以下のコマンドを 実行してください: ./configure make depend make これによって"wine"というプログラムと多数のサポートライブラリやバイナリが ビルドされます。"wine"というプログラムはWindows実行可能ファイルを読み込み 実行します。"libwine" ("Winelib") というライブラリはUnixのもとでWindowsの ソースコードをコンパイルしリンクするのに使えます。 コンパイル設定オプションを見るには、./configure --helpを行なってください。 パッチファイルを使うことで新しいリリースにアップグレードするには、 はじめにリリースのトップレベルディレクトリ(このREADME [訳注: README.jaではなくREADME]を含むディレクトリ)にcdしてください。 そして"make clean"を行ない、以下のようにしてリリースにパッチを当ててください: bunzip2 -c patch-file | patch -p1 ここで"patch-file"は(wine-1.0.x.diff.bz2のような)パッチファイルの名前です。 そうすると"./configure"を再実行でき、"make depend && make"を行なえます。 5. 設定 いったんWineが正しくビルドされると、"make install"を行なえます。 これによりwine実行可能ファイル、Wine manページやいくつかの必要なファイルが インストールされます。 まず、衝突するあらゆる前のWineインストールをアンインストールするのを 忘れないでください。インストール前に"dpkg -r wine"または"rpm -e wine" または"make uninstall"を試してください。 いったんインストールされると、"winecfg"設定ツールを実行できます。 設定のヒントについてはhttp://www.winehq.org/におけるサポート領域を 参照してください。 6. プログラムの実行 Wineを起動するとき、実行可能ファイルのパス全体またはファイル名のみを 指定できます。 例えば、メモ帳を実行するには: wine notepad (設定ファイルで指定された、ファイルを検索するための wine notepad.exe 検索パスを使う) wine c:\\windows\\notepad.exe (DOSファイル名の文法を使う) wine ~/.wine/drive_c/windows/notepad.exe (Unixファイル名の文法を使う) wine notepad.exe /parameter1 -parameter2 parameter3 (パラメータを付けてプログラムを呼ぶ) Wineはまだ完成していないので、いくつかのプログラムはクラッシュする かもしれません。そのようなクラッシュでは、問題を調査して修正できるように デバッガに放り込むことになるでしょう。これのやりかたについて詳しくは Wine Developer's Guide(Wine開発者のガイド)のデバッグの節を調べてください。 7. 更なる情報の取得 WWW: Wineについてのたくさんの情報がhttp://www.winehq.org/にある WineHQから入手できます。多様なWineガイド、アプリケーションデータベース、 バグ追跡。これはおそらく最良の出発点です。 FAQ: Wine FAQはhttp://www.winehq.org/FAQにあります Usenet: comp.emulators.ms-windows.wine上でWine関連の問題を議論し助けを 得られます。 バグ: http://bugs.winehq.orgにあるWine Bugzillaでバグを報告してください。 バグ報告を投稿する前に問題がすでにあるのかどうかを調べるために bugzillaデータベースを検索してください。comp.emulators.ms-windows.wineに バグを投稿することもできます。 IRC: irc.freenode.net上のチャンネル#WineHQでオンラインヘルプを利用できます。 GIT: 現在のWine開発ツリーはGITを通して入手できます。 詳細についてはhttp://www.winehq.org/site/gitに行ってください。 メーリングリスト: Wineユーザと開発者のためのいくつかのメーリングリストがあります。 詳細についてはhttp://www.winehq.org/forumsを参照してください。 Wiki: Wine Wikiはhttp://wiki.winehq.orgにあります 何かを追加するか、バグを修正するならば、次のリリースに含めるために ('diff -u'形式で)パッチをwine-patches@winehq.orgのリストに送ってください。 -- Alexandre Julliard julliard@winehq.org