Compiling the viewer (Mac OS X)/ja

最新の情報は、Project Snowstorm ページをご確認ください。
= 開発ツールの入手 =
* Xcode 3: ほとんどの Linden 担当者は、Macintosh コンピュータでビルドするのに、Xcode 3.2 を Snow Leopard (OS X 10.6) で使っています。話を簡単にするために、mpkg の内容を全てインストールすることをお奨めします。ちなみに、最近のバージョンの Xcode には、3.1 互換のビルドオプションがあります。(Talk:Compiling_the_viewer_(Mac_OS_X)#Trying_newer_versions_of_tools を参照してください。最近の Xcode (3.2.4) は大丈夫です。)
* Xcode 4: MAC 系コンピュータでは今では Xcode 4.6 を使ってビルドができるようになっていますが、通常の手順の前に、Xcode 4.3 をダウンロードして #Xcode 4.6 の改造 に従って操作するという手順が必要です。
* CMake: CMake を cmake.org から入手するか、MacPorts を使い、'port install cmake' でインストールします。CMake 2.6 以上が必須です。将来、CMake 2.8 以降が必須となるかもしれません。
* Command line Makefiles: Apple の Xcode に同梱されています。Apple の Xcode をダウンロードしてインストールしてください。
注: Xcode で提供される bison と flex ではうまくいかず、 MacPorts で取得したものを使う必要があったという報告もあります。その場合、 bison は 2.3 でなければならず (2.6 や 2.7 ではエラー発生), flex は 2.5.35 でうまくいったとのことです。
= ソースコードのダウンロード =
Linden Lab の Project Snowstorm は バージョン管理リポジトリ に Mercurial と Bit Bucket を採用しています。リポジトリはこちらにあります。必要に応じて、viewer-development、viewer-beta、viewer-release、その他諸々を漁ってください。初めての場合は、おそらく viewer-release か viewer-beta を取得するのがいいでしょう。viewer-developer は１週間に数回更新されるからです。しかしそうではなくて、最新のソースコードで作業したいという場合は、Project Snowstorm の最新ビルドや bitbucket の viewer-developer を漁ってください。
= Xcode 4.6 の改造 =
Xcode 4.6 をお使いの場合、ビルドを通すには、通常の手順とは別に以下の手順を踏む必要があります。
# Xcode 4.6.x をダウンロードし、インストールして起動します。 Preferences -> Downloads から、Command Line Tools と依存モジュール一式をインストールし、終了します。
# Apple Developer サイトから Xcode 4.3 をダウンロードします。
# xcode_4.3_for_lion.dmg をマウントします。
# https://bitbucket.org/jj_linden/build-scripts から、 xcode_fix スクリプトを取得します。
# 書き込み権限のあるフォルダーでスクリプトを実行します。スクリプトの中にある sudo コマンドを実行するためにパスワードを入力する必要があります。
このスクリプトは、 テンポラリフォルダ ('temp') を作成し、そこに Mac OSX 10.6 SDK を Xcode 4.3 のインストーラの中から引っこ抜いてきます。そしてそれを展開して XCode 4.6 で使えるようにします。展開後、テンポラリフォルダは削除されます。		
= 前提ライブラリのインストール =
ビューアのビルドによっては、前提ライブラリに依存しているものがあります(前提ライブラリの利用を敬遠していたり、許可されていなかったりする開発者のために、他のオープンソースライブラリも提供されています)。Linden の担当者はこれらのライブラリを配布しませんので、ライブラリパッケージをダウンロードしてあっても、これらのライブラリは別に取得／インストールしなければなりません。(ライセンス制約の関係からこうなっています。Linden の担当者にお願いしないでください。Linden の担当者は既に許可を求めて、断られています。だから、自分で取得してください。)
== Fmod ==
=== Fmod その１ (autobuild を使った方法) ===
CD コマンドで 3p-fmod レポジトリをインストールしたい場所に移動します。
$ hg clone <nowiki>https://bitbucket.org/lindenlab/3p-fmod</nowiki>
$ cd 3p-fmod
$ autobuild build --all
$ autobuild package
実行結果はこのように表示されます。
packing fmod
wrote /3p-fmod/fmod-3.75-darwin-20120614.tar.bz2
md5 527422281dbe49abac29380996d41230
リポジトリのルートディレクトリに CD で移動して、autobuild の設定ファイルの名前とハッシュを、表示されているもので書き換えます。例えば上の例の場合、以下のように実行します。
 
$ autobuild installables edit fmod platform=darwin hash=527422281dbe49abac29380996d41230 url=file:///3p-fmod/fmod-3.75-darwin-20120614.tar.bz2
注: FMOD は現在では対応するバージョンのものが公式から提供されていません。他から fmodapi375mac.zip を取得してくる必要があります。現在、Kittin Ninetails が SkyDrive で提供しています。
=== Fmod その２ (system module を使った方法) ===
(未稿)
= ビルド構成とビルド =
== Autobuild で ==
Autobuild の設定、Autobuild を使ったビルドは、全てのプラットフォームで共通です。完全な手順は Building the Viewer with Autobuild/ja にあるかもしれません。
例:
autobuild configure -c RelWithDebInfoOS -- -DLL_TESTS:BOOL=FALSE -DPACKAGE:BOOL=FALSE -DFMOD:BOOL=TRUE
autobuild build -c RelWithDebInfoOS --no-configure
== Xcode で ==
Building the Viewer with Autobuild/ja の設定手順に従って操作していれば、build-darwin-i386 というディレクトリがソースディストリビューションのルートに作成されていることでしょう。そのディレクトリの中に、SecondLife.xcodeproj というプロジェクトファイルがあり、それが Xcode で使えます。開くとビルドできるように正しく設定されるはずなので、あとは Build and Run をすればいいです。
= ビルドしたビューアの実行 =
== コンソールで ==
ソースツリーのルートディレクトリで、以下を実行します。
$build-darwin-i386/newview/[CONFIGURATION]/Second\ Life.app/Contents/MacOS/Second\ Life
[CONFIGURATION] はビルド構成の名前 ("Debug", "Release", "RelWithDebInfo") に読み替えてください。
== Xcode で ==
"secondlife-bin" という Scheme を実行してください。
== Finder で ==
# build-darwin-i386/newview/[CONFIGURATION] に移動します。
# アプリケーションをダブルクリックします。
:エイリアスを作成して、自分が使いやすい場所に置いておくのもよいでしょう。
= ユニットテストのビルド =
XCode で build-darwin-i386/test/test.xcodeproj というプロジェクトを開き、 Scheme に "test" を選択して実行します。SecondLife.xcodeproj には "test" という Scheme もあります。
= トラブルの対処 =
== 解決方法の調査 ==
ここに記載された手順に沿って操作した結果、エラーに遭遇したり、問題が発生したときは、まず他の人が同じ問題を抱えたことがないか確認をお願いします。既知の解決策が存在することもあります。
こちらのリソースのどれかに解決策があるかもしれません。
* 原文の Talk ページ (役に立つ体験があれば投稿してください)
* 原文の下のほうにある問題一覧 (新しい問題がある場合は、こちらではなく上の Talk ページに追加してください)
* 以前の Talk ページ
* Common compilation problems (ちょっと古い)
* Issue tracker
* 直してください: Modifying CMake Files そしてぜひ、パッチを提供してください！
== Getting Help ==
同じ問題に関する記述がまだなくても、誰かが知っている可能性がありますので、コミュニティーに助けを求めてみましょう(英語)。
* OpenSource-Dev Mailing List (登録はこちら) に登録して、質問を投げてみましょう。
* 早く回答を得たいときは、#opensl on freenode にある、オープンソースビューアの一般的なディスカッションと開発作業のための IRC チャンネルに参加してみましょう。運がよければ、質問したときに、親切な人がオンラインになっていることがあります。
== パッチの提供 ==
たぶんずっと先になるでしょうが、ソースコードに変更を加え、それを提供したい場合は、パッチの提供に関するページを参照してください。 
Category:Compiling viewer