Difference between revisions of "Compiling the viewer (Mac OS X)/ja"

From Second Life Wiki
Jump to navigation Jump to search
m (Text replacement - "hg.secondlife.com" to "bitbucket.org/lindenlab")
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Languages}}
{{Multi-lang|Compiling_the_viewer_(Mac_OS_X)|ja}}
{{CompileNav}}
{{CompileNav}}


以下が、Second LifeビューアをMac OS Xでコンパイルするための手順です。その他のプラットフォームについては[[Get source and compile/ja|Compiling the viewer]]を見てください。
最新の情報は、[[Project Snowstorm]] ページをご確認ください。


このページの他に、[[source downloads]]にある表の'''Build Notes'''の欄も確認してください。
= 開発ツールの入手 =


= 開発環境 =
* '''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 を [http://www.cmake.org cmake.org] から入手するか、[http://macports.org/ MacPorts] を使い、'port install cmake' でインストールします。CMake 2.6 以上が必須です。将来、CMake 2.8 以降が必須となるかもしれません。
* '''Command line Makefiles''': Apple の Xcode に同梱されています。Apple の Xcode をダウンロードしてインストールしてください。


リンデン社では、MacintoshコンピュータでのコンパイルにXCode 2.4.1を使っています。話を簡単にするために、mpkgの内容をすべてインストールしてください。
注: Xcode で提供される ''bison'' と ''flex'' ではうまくいかず、 MacPorts で取得したものを使う必要があったという報告もあります。その場合、 ''bison'' は 2.3 でなければならず (2.6 や 2.7 ではエラー発生), ''flex'' は 2.5.35 でうまくいったとのことです。


= ファイルのインストール =
= ソースコードのダウンロード =
== CMake ==


http://www.cmake.org のDownloadページの、最下部にあるcomplete download pageから、CMake 2.4.8をインストールします。
Linden Lab の [[Project Snowstorm]] は [[version control repository|バージョン管理リポジトリ]] に [http://mercurial.selenica.com Mercurial] と [http://bitbucket.org Bit Bucket] を採用しています。リポジトリは[http://bitbucket.org/lindenlab こちら]にあります。必要に応じて、''viewer-development''、''viewer-beta''、''viewer-release''、その他諸々を漁ってください。初めての場合は、おそらく ''viewer-release'' か ''viewer-beta'' を取得するのがいいでしょう。''viewer-developer'' は1週間に数回更新されるからです。しかしそうではなくて、最新のソースコードで作業したいという場合は、[[Project Snowstorm]] の最新ビルドや bitbucket の ''viewer-developer'' を漁ってください。
== ソース、ライブラリ、アートワーク ==


コンパイルに必要なソースファイル、コンパイル済みの第三者のライブラリ、アートワークファイルは、[[source downloads]]のページから入手できます。Mac/Linux (LF) sourceと、Mac libraryと、Artworkのzipファイルをダウンロードします。
= Xcode 4.6 の改造 =


ダウンロードしたアーカイブを同じディレクトリに解凍します。そのディレクトリの名前には、空白を含まないようにします。例えば、アーカイブをダウンロードしたディレクトリで、次のようにします。(ここで x.x.x.xはバージョン番号で、例えば 1.14.0.1 となります。)
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 コマンドを実行するためにパスワードを入力する必要があります。


$ tar xvfz slviewer-src-x.x.x.x.tar.gz
このスクリプトは、 テンポラリフォルダ ('temp') を作成し、そこに Mac OSX 10.6 SDK を Xcode 4.3 のインストーラの中から引っこ抜いてきます。そしてそれを展開して XCode 4.6 で使えるようにします。展開後、テンポラリフォルダは削除されます。
$ tar xvfz slviewer-darwin-libs-x.x.x.x.tar.gz
$ unzip slviewer-artwork-x.x.x.x.zip


Stuffit がインストールされていると、ダウンロードしたときに .gz が自動的に伸長されて取り除かれます。その場合は、tar xvf のように z オプションを付けずに解凍します。.zip は、自動的に解凍されてしまいます。ブラウザで、ダウンロードファイルをクリックするのではなく、リンクを右クリックしてDownload Linked Fileを選ぶと、.gzと.zipのままダウンロードできるかもしれません。
= 前提ライブラリのインストール =


正確なファイル名はバージョンによって異なります。
ビューアのビルドによっては、前提ライブラリに依存しているものがあります(前提ライブラリの利用を敬遠していたり、許可されていなかったりする開発者のために、他のオープンソースライブラリも提供されています)。Linden の担当者はこれらのライブラリを配布しませんので、ライブラリパッケージをダウンロードしてあっても、これらのライブラリは別に取得/インストールしなければなりません。(ライセンス制約の関係からこうなっています。Linden の担当者にお願いしないでください。Linden の担当者は既に許可を求めて、断られています。だから、自分で取得してください。)


ダウンロードしたアーカイブをダブルクリックして解凍した場合には (それぞれのアーカイブは別のフォルダとして解凍されますが)、フォルダをドラッグして別のフォルダに重ねると、同じ名前のフォルダの内容は、Windowsのようにマージされるのではなく、古いフォルダが新しいフォルダの内容で置き換わってしまうという点に注意してください。
== Fmod ==


[[source downloads]]のページにダウンロードしたビューアのバージョンに特有の特別なコンパイルの注意 (Build Note) があれば、その内容も確認してください。
=== Fmod その1 (autobuild を使った方法) ===


== ライブラリを自分でコンパイルしてイントールする (オプション) ==
CD コマンドで 3p-fmod レポジトリをインストールしたい場所に移動します。
<pre>
$ hg clone <nowiki>https://bitbucket.org/lindenlab/3p-fmod</nowiki>
$ cd 3p-fmod
$ autobuild build --all
$ autobuild package
</pre>


リンデン社では、皆さんの便宜を図る目的で、配布の許可が得られたライブラリをパッケージにまとめて、ダウンロードして開発用ディレクトリに解凍すればいいようにしています。[[#ソース、ライブラリ、アートワーク|前述の手順]]に従うと、あらかじめコンパイル済みの第三者のライブラリの開発用ファイルがインストールできます。それを使う代わりに、このライブラリを自力でコンパイルしたい人は、[[Compiling the viewer libraries (Mac OS X)|別のページ]]の説明を見てください。
実行結果はこのように表示されます。
<pre>
packing fmod
wrote  /3p-fmod/fmod-3.75-darwin-20120614.tar.bz2
md5    527422281dbe49abac29380996d41230
</pre>


== オープンソースでないライブラリのインストール ==
リポジトリのルートディレクトリに CD で移動して、autobuild の設定ファイルの名前とハッシュを、表示されているもので書き換えます。例えば上の例の場合、以下のように実行します。
<pre>
$ autobuild installables edit fmod platform=darwin hash=527422281dbe49abac29380996d41230 url=file:///3p-fmod/fmod-3.75-darwin-20120614.tar.bz2
</pre>


ビューアは、いくつかのオープンソースでないライブラリを必要とします。リンデン社は、これらのライブラリの開発用ファイルを配布していないので、ダウンロードのページからライブラリパッケージを入手した場合でも、個別にダウンロードしてインストールする必要があります。(これは、ライセンスの制約によるものです。リンデン社では、これらのライブラリの開発ファイルを配布できるように努力しましたが、許可が得られませんでした。ですから、これ以上いろいろ言わず、自分で入手してください。)
注: FMOD は現在では対応するバージョンのものが公式から提供されていません。他から fmodapi375mac.zip を取得してくる必要があります。現在、[https://my.secondlife.com/kittin.ninetails Kittin Ninetails] が [http://cid-6a2f42d7b470f408.office.live.com/browse.aspx/Public/Second%20Life SkyDrive] で提供しています。


=== Fmod ===
=== Fmod その2 (system module を使った方法) ===
#[http://www.fmod.org/index.php/download fmod 3.75 programmers api for macintosh]をダウンロードして解凍。
#*(これよりも新しいバージョンをダウンロードしない。v3.75を使うこと。)
#解凍したファイルを以下のようにコピーする。'''x86用ライブラリの名前を変更する点に注意'''。


$ cp -p fmodapi375mac/api/inc/*.h linden/libraries/include
(未稿)
$ cp -p fmodapi375mac/api/lib/libfmod.a linden/libraries/powerpc-darwin/lib_debug
$ cp -p fmodapi375mac/api/lib/libfmod.a linden/libraries/powerpc-darwin/lib_release
$ cp -p fmodapi375mac/api/lib/libfmodx86.a linden/libraries/i386-darwin/lib_debug/libfmod.a
$ cp -p fmodapi375mac/api/lib/libfmodx86.a linden/libraries/i386-darwin/lib_release/libfmod.a


= ビューアのコンパイル =
= ビルド構成とビルド =


#XCodeを起動し、プロジェクトファイル'linden/indra/newview/macview.xcodeprojを開きます。
== Autobuild で ==
#続いて'libraries'あるいは'llcommon'をactive targetにして、active build configurationを適切に選択し、buildします。
Autobuild の設定、Autobuild を使ったビルドは、全てのプラットフォームで共通です。完全な手順は [[Building the Viewer with Autobuild/ja]] にあるかもしれません。
#その後'newview'をactive targetにして、active build configurationを適切に選択し、buildする。


もしも、ppcアーキテクチャのMacintoshを使っているためにgccのバージョンを変更していれば、以下のようにしてgccを4.0に戻しておく。
例:
<pre>
autobuild configure -c RelWithDebInfoOS -- -DLL_TESTS:BOOL=FALSE -DPACKAGE:BOOL=FALSE -DFMOD:BOOL=TRUE
autobuild build -c RelWithDebInfoOS --no-configure
</pre>


$ sudo gcc_select 4.0
== Xcode で ==


== Build Configurationについて ==
[[Building the Viewer with Autobuild/ja]] の設定手順に従って操作していれば、''build-darwin-i386'' というディレクトリがソースディストリビューションのルートに作成されていることでしょう。そのディレクトリの中に、''SecondLife.xcodeproj'' というプロジェクトファイルがあり、それが Xcode で使えます。開くとビルドできるように正しく設定されるはずなので、あとは ''Build and Run'' をすればいいです。


; Development : このconfigurationは、デバッグに向きます。コンパイルによってできるSecond Lifeアプリケーションは、コンパイルしているホストのアーキテクチャ用になります。
; Deployment : このconfigurationは、デバッグがしにくくなる代わりにDevelopmentの場合よりも高速に動作します。コンパイルによってできるSecond Lifeアプリケーションは、コンパイルしているホストのアーキテクチャ用になります。
; Universal : このconfigurationは、Deploymentと同様ですが、コンパイル結果はppcでもi386でもどちらのアーキテクチャでも実行できるものになります。


= ユニットテスト =
= ビルドしたビューアの実行 =


XCodeで、プロジェクトファイル'linden/indra/test/MacTester.xcodeproj'を開き、'MacTester'をアクティブターゲットにしてbuildします。
== コンソールで ==


= パッチを投稿する =
ソースツリーのルートディレクトリで、以下を実行します。
<pre>
$build-darwin-i386/newview/[CONFIGURATION]/Second\ Life.app/Contents/MacOS/Second\ Life
</pre>
[CONFIGURATION] はビルド構成の名前 ("Debug", "Release", "RelWithDebInfo") に読み替えてください。


ソースを修正して、パッチを投稿したくなった場合は、[[Submitting patches]]を参照してください。
== Xcode で ==
 
"secondlife-bin" という Scheme を実行してください。
 
== Finder で ==
 
# ''build-darwin-i386/newview/[CONFIGURATION]'' に移動します。
# アプリケーションをダブルクリックします。
:エイリアスを作成して、自分が使いやすい場所に置いておくのもよいでしょう。
 
 
= ユニットテストのビルド =
XCode で ''build-darwin-i386/test/test.xcodeproj'' というプロジェクトを開き、 Scheme に "test" を選択して実行します。''SecondLife.xcodeproj'' には "test" という Scheme もあります。
 
= トラブルの対処 =
 
== 解決方法の調査 ==
ここに記載された手順に沿って操作した結果、エラーに遭遇したり、問題が発生したときは、まず他の人が同じ問題を抱えたことがないか確認をお願いします。既知の解決策が存在することもあります。
 
こちらのリソースのどれかに解決策があるかもしれません。
* [[{{TALKPAGENAME}}|原文の Talk ページ]] (役に立つ体験があれば投稿してください)
* [[#Common_Issues.2FBugs.2FGlitches_And_Solutions|原文の下のほうにある問題一覧]] (新しい問題がある場合は、こちらではなく上の Talk ページに追加してください)
* [[Talk:Microsoft_Windows_Builds|以前の Talk ページ]]
* [[Common compilation problems]] (ちょっと古い)
* [[Issue tracker]]
 
*  直してください: [[Modifying CMake Files]] そしてぜひ、パッチを提供してください!
 
== Getting Help ==
同じ問題に関する記述がまだなくても、誰かが知っている可能性がありますので、コミュニティーに助けを求めてみましょう(英語)。
 
* [[OpenSource-Dev|OpenSource-Dev Mailing List]] ([https://lists.secondlife.com/cgi-bin/mailman/listinfo/opensource-dev 登録はこちら]) に登録して、質問を投げてみましょう。
* 早く回答を得たいときは、[irc://irc.freenode.org/opensl #opensl on freenode] にある、オープンソースビューアの一般的なディスカッションと開発作業のための [[IRC]] チャンネルに参加してみましょう。運がよければ、質問したときに、親切な人がオンラインになっていることがあります。
 
== パッチの提供 ==
たぶんずっと先になるでしょうが、ソースコードに変更を加え、それを提供したい場合は、[[Submitting patches|パッチの提供]]に関するページを参照してください。
 
[[Category:Compiling viewer]]

Latest revision as of 10:13, 1 May 2015

最新の情報は、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 で提供される bisonflex ではうまくいかず、 MacPorts で取得したものを使う必要があったという報告もあります。その場合、 bison は 2.3 でなければならず (2.6 や 2.7 ではエラー発生), flex は 2.5.35 でうまくいったとのことです。

ソースコードのダウンロード

Linden Lab の Project Snowstormバージョン管理リポジトリMercurialBit Bucket を採用しています。リポジトリはこちらにあります。必要に応じて、viewer-developmentviewer-betaviewer-release、その他諸々を漁ってください。初めての場合は、おそらく viewer-releaseviewer-beta を取得するのがいいでしょう。viewer-developer は1週間に数回更新されるからです。しかしそうではなくて、最新のソースコードで作業したいという場合は、Project Snowstorm の最新ビルドや bitbucket の viewer-developer を漁ってください。

Xcode 4.6 の改造

Xcode 4.6 をお使いの場合、ビルドを通すには、通常の手順とは別に以下の手順を踏む必要があります。

  1. Xcode 4.6.x をダウンロードし、インストールして起動します。 Preferences -> Downloads から、Command Line Tools と依存モジュール一式をインストールし、終了します。
  2. Apple Developer サイトから Xcode 4.3 をダウンロードします。
  3. xcode_4.3_for_lion.dmg をマウントします。
  4. https://bitbucket.org/jj_linden/build-scripts から、 xcode_fix スクリプトを取得します。
  5. 書き込み権限のあるフォルダーでスクリプトを実行します。スクリプトの中にある sudo コマンドを実行するためにパスワードを入力する必要があります。

このスクリプトは、 テンポラリフォルダ ('temp') を作成し、そこに Mac OSX 10.6 SDK を Xcode 4.3 のインストーラの中から引っこ抜いてきます。そしてそれを展開して XCode 4.6 で使えるようにします。展開後、テンポラリフォルダは削除されます。

前提ライブラリのインストール

ビューアのビルドによっては、前提ライブラリに依存しているものがあります(前提ライブラリの利用を敬遠していたり、許可されていなかったりする開発者のために、他のオープンソースライブラリも提供されています)。Linden の担当者はこれらのライブラリを配布しませんので、ライブラリパッケージをダウンロードしてあっても、これらのライブラリは別に取得/インストールしなければなりません。(ライセンス制約の関係からこうなっています。Linden の担当者にお願いしないでください。Linden の担当者は既に許可を求めて、断られています。だから、自分で取得してください。)

Fmod

Fmod その1 (autobuild を使った方法)

CD コマンドで 3p-fmod レポジトリをインストールしたい場所に移動します。

$ hg clone https://bitbucket.org/lindenlab/3p-fmod
$ 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 NinetailsSkyDrive で提供しています。

Fmod その2 (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 で

  1. build-darwin-i386/newview/[CONFIGURATION] に移動します。
  2. アプリケーションをダブルクリックします。
エイリアスを作成して、自分が使いやすい場所に置いておくのもよいでしょう。


ユニットテストのビルド

XCode で build-darwin-i386/test/test.xcodeproj というプロジェクトを開き、 Scheme に "test" を選択して実行します。SecondLife.xcodeproj には "test" という Scheme もあります。

トラブルの対処

解決方法の調査

ここに記載された手順に沿って操作した結果、エラーに遭遇したり、問題が発生したときは、まず他の人が同じ問題を抱えたことがないか確認をお願いします。既知の解決策が存在することもあります。

こちらのリソースのどれかに解決策があるかもしれません。

Getting Help

同じ問題に関する記述がまだなくても、誰かが知っている可能性がありますので、コミュニティーに助けを求めてみましょう(英語)。

  • OpenSource-Dev Mailing List (登録はこちら) に登録して、質問を投げてみましょう。
  • 早く回答を得たいときは、#opensl on freenode にある、オープンソースビューアの一般的なディスカッションと開発作業のための IRC チャンネルに参加してみましょう。運がよければ、質問したときに、親切な人がオンラインになっていることがあります。

パッチの提供

たぶんずっと先になるでしょうが、ソースコードに変更を加え、それを提供したい場合は、パッチの提供に関するページを参照してください。