Building the Viewer with Autobuild/ja
Autobuild のインストール
警告: Windows でビルドしている場合は、Viewer_2_Microsoft_Windows_Builds/ja に行ってください。こちらの手順に沿って作業しないでください。 |
まだやってないなら、autobuild をインストールしてください。Autobuild のページに全体の説明書があります。はしょって手順を説明すると、
- cd コマンドで autobuild をインストールしたい場所に移動します。このディレクトリのパスにスペースが含まれていてはいけません。
- 以下のコマンドを実行します。
hg clone http://hg.secondlife.com/autobuild
- 環境変数 PATH に autobuild の
/bin
ディレクトリを含めます。
希望するコンフィギュレーションをビルド
適切に設定された開発用マシン (コンパイル 参照のこと) では、autobuild でのビューアのビルドは、こちらのコマンド一発でできます。
autobuild build -c [CONFIGURATION]
CONFIGURATION にはビルドしたいビルドコンフィギュレーションの名前が入ります。ビューアの autobuild.xml ファイルに定義されたビルドコンフィギュレーションは以下に説明する簡単な規約に則っています。開発者側では、必要なビルドコンフィギュレーションを選ばなければなりません。ビルドが完了すると、生成物は build-* という名前のディレクトリに格納されます。* はワイルドカードで、プラットフォームによって変わる部分を表します。
IDE でビューアをビルドしたい開発者は、全部をコマンドラインでビルドする必要はありません。
autobuild configure -c [CONFIGURATION]
でビルドディレクトリに、(ビルドコンフィギュレーションが使用する場合は) 依存モジュールがインストールされ、適切なプロジェクト/ソリューションファイルが作成されます (Mac の場合 .xcodeproj で、Windows の場合 .sln)。
Linden ビルドコンフィギュレーション
以下の3種類のビルドコンフィギュレーションは、デバッグ機能と最適化の兼ね合いを調整するために使用されます。
- Debug — 最適化を行わず、デバッグ情報を出力します。
- RelWithDebInfo — 最適化は行われますが、デバッグ情報を出力します。
- Release — 最適化を行い、デバッグ情報を出力しません。
Debug はクライアントが重くなりますが最もデバッグしやすくなります。RelWithDebInfo はだいぶ軽くなりデバッグもしやすいですが、コードの最適化により、時折デバッガで処理を追うのが困難になります。Release は公開されるビューアのビルドに使用されます。
Linden でない開発者向けのコンフィギュレーション
前項で説明した、変更されていないビルドコンフィギュレーションは Linden の担当者が利用することを念頭に調整されていて、一般には公開されていないインストール媒体へのアクセスが必要な場合があります。オープンソース開発者向けには、サードパーティによる開発をサポートするために、これから変更されたものが提供されています。OS が最後につく、特別なコンフィギュレーション名を使います。例えば、リリース用の最適化がされていて、デバッグ情報があるビューアをビルドするには、次のようにします。
autobuild build -c RelWithDebInfoOS
ちなみに、*OS でのビルドでは、FMOD にまつわる問題が残っている可能性があります。1つのやり方としては、以下のようにして、変な FMOD をダウンロードしないように明示的に指定します。
autobuild build -c ReleaseOS -- -DFMOD:BOOL=FALSE
インストール媒体を使わない
警告: Autobuild でインストールされる媒体を使わず、システムライブラリを使ってビルドするのは 正式にはサポートされていません。このため、定期的にはテストされておらず、どこかのタイミングで壊れる可能性があります。 |
チェックアウトされたソースツリーに Linden Lab の提供した媒体をインストールすることなく、システムにインストールされたライブラリだけでビューアをビルドすることもできます。過去の経緯から、"STANDALONE" ビルドという名前がついています。(Linux 向けのビルド手順の中にある、What does 'Standalone' mean? を参照してください。)
重要 "STANDALONE" でビルドするには、手動でサードパーティの依存モジュールをインストールしなければなりません。 |
STANDALONE 専用のビルドコンフィギュレーションは存在しません。その代わりに、*OS
コンフィギュレーションを使い、CMake の STANDALONE
変数を手で書き換えて ON
にする必要があります。例えば、リリース用の最適化がされていて、デバッグ情報があるビューアをビルドするには、次のようにします。
autobuild configure -c RelWithDebInfoOS -- -DSTANDALONE=ON autobuild build -c RelWithDebInfoOS --no-configure
カスタムビルド
既存のビルドコンフィギュレーションがニーズに合わない場合、思い通りのオプションでビルドするには、2つの方法があります。追加のコンフィギュレーションオプションを渡したいだけなら、configure コマンドを以下の書式で実行します。
autobuild configure -c [build configuration] -- [Option, [Option...]]
-- の後にあるオプションがコンフィギュレーションコマンドに渡ります。これで、
autobuild build -c [build configuration] --no-configure -- [Option, [Option]]
として、-- の後にビルドコマンドに渡したいオプションを書けば、ビルドできるようになります。--no-configure オプションでビルドの間にコンフィギュレーションが再び実行され(て、今まで渡したオプションが無かったことになることが)ないようになります。
それ以外の方法では、autobuild.xml コンフィギュレーションファイルに新しいコンフィギュレーションを
autobuild edit configure
や
autobuild edit build
で追加して、新しいコンフィギュレーションを対話形式で作成し、コンフィギュレーションをビルドします。コンフィギュレーションの作成に関する詳細な情報は Autobuild_How_To にあるかと思います。