サポートされているプラットフォーム
Tamarin は現在 32 ビット Windows, Linux および Mac OS X (PPC, Intel) 上で動作します。プロトタイプの ARM プロセッサ移植コードが利用できますが、まだ不完全で十分テストされていません。
Tamarin のソースの入手
Tamarin のソースは Tamarin Central の Mercurial に存在します。Tamarin レポジトリのコピーを作るには以下のコマンドを使います。
$ hg clone https://hg.mozilla.org/tamarin-central tamarin-central
Tamarin のビルド
Tamarin のビルドは AVMPlus とガベージコレクタ (MMgc) の全ライブラリを作り、ABC ファイルフォーマットを実行するためのスタンドアローン実行ファイル avmplus
を作成します。avmplus
実行ファイルの名前と場所はビルドシステムや設定パラメータによって様々です。引数なしで avmplus
を実行すると利用可能なオプションの一覧が表示されます。追加のコマンドライン引数はデバッグ設定でのみ利用可能であることに注意してください。
Tamarin コードベースは Microsoft Visual Studio と Apple XCode 向けに独立したふたつのビルドシステムを含んでいます。さらに、Mozilla 開発者向けにクロスプラットフォームなビルドシステムがあります。
Tamarin コードベースはデバッギングフックをサポートする追加コードをビルドすることができます。XCode プロジェクトでは、これは Debug_Debugger
と Release_Debugger
設定です。Flash Player はコードサイズの理由からデバッギングフックを無効にしてビルドしていますが、Mozilla クライアントはデバッギングフックを有効にして Tamarin をビルドするでしょう。
クロスプラットフォームビルド
まず、あなたはプラットフォームのMozilla のビルドの必要環境が整っていなくてはなりません。更に Python 2.4 以上と GNU make
3.81 以上が必要です。(GNU make
3.80 は動作しません。他のいかなるブランドの make
も動作しません。)
正しい必要環境を使って、Tamarin をビルドするために以下のコマンドを使ってください:
$ hg clone https://hg.mozilla.org/tamarin-central $ cd tamarin-central $ mkdir objdir-debug $ cd objdir-debug $ python ../configure.py --enable-shell $ make
これで全てです。
Microsoft Visual Studio
Visual Studio 2005 (VS2005) が Windows での推奨ビルド環境です。Microsoft Visual Studio 2005 を使って Tamarin をビルドするには、Tamarin プロジェクトファイル platform/win32/avmplus_8.sln
を開きます。プロジェクトファイル platform/win32/avmplus.sln
を使う Visiual Studio 2003 はまだサポートされていますが、将来サポートが打ち切られるかもしれません。
現在 Windows ビルドは手動で mozilla-central/modules/zlib
を同期し modules/zlib
ディレクトリを tamarin-central の親ディレクトリにコピーする必要があります。これは将来のビルドシステムではされるはずです。以下のコマンドを実行してください。
$ hg clone https://hg.mozilla.org/mozilla-central mozilla-central $ mkdir ../modules $ cp -r mozilla-central/modules/zlib ../modules/zlib
Apple XCode
プロジェクトファイルは XCode 2.3 と 2.4 向けに設計されています。platform/mac/avmplus/avmplus.xcodeproj/
を参照してください。XCode 2.2 では動かないでしょう。
プロジェクトファイルはデフォルトで Mac intel の実行ファイルをビルドします。
PowerPC の Tamarin をビルドするには以下のコマンドを実行してください:
$ cd tamarin-central $ xcodebuild -project platform/mac/shell/shell.xcodeproj
PowerPC 向けにビルドするには ARCHS=ppc
を xcodebuild
コマンドに追加してください。デバッグビルドには -configuration Debug
(大文字の D
に注意) を追加してください。
生成された実行ファイルは platform/mac/shell/Release/shell
にビルドされています。 (注意: いくつかのライブラリは tamarin-central
ディレクトリの外、tamarin-central/../platform/mac/flash/Builds/Release
にビルドされます。これはおそらくバグです。)
注意: CodeWarrior プロジェクトファイルが提供されていますがサポートされていません。それらを必要とするレガシーコードベースで作業する人々への礼儀として提供されています。
Linux と Unix
Tamarin は Linux とその他の Unix 系 OS (Unix flavors) ではテストされていません。とはいえ Unix で Tamarin をビルドすることは可能です。 https://zlib.net/ から zlib のソースをダウンロードする必要があります (あるいはディストリビューションで利用できるソースパッケージを使ってください)。
ビルドするには以下のコマンドを実行してください:
$ cd tamarin-central/platform/unix $ make ZLIB_ROOT=/path/to/zlib/sources
生成された "avmplus" 実行ファイルは現在のディレクトリにビルドされます。
アプリケーションのコンパイルと実行
現在 Tamarin 用のコンパイラは Adobe ActionScript compiler だけです。ActionScript コンパイラ, asc
は 2007 年後半にオープンソース化される予定で、現在は Adobe Flex® 2 SDK から自由に利用できます。コンパイラは Java で書かれ、Java™ 1.4 以降の JDK のインストールが必要です。
プロトタイプのセルフホスティング ECMAScript 第 4 版 コンパイラ esc
が Tamarin と一緒に提供されていますが、自分自身をブートストラップしたりアプリケーションをビルドする能力はまだありません。esc
は活発に開発されており、今年の後半には Tamarin アプリケーションを生成できるようになるでしょう。
ActionScript コンパイラをインストールするには以下の手順に従ってください。
- Adobe Flex 2 SDK をダウンロードしてインストール
- ActionScript コンパイラは
lib/asc.jar
にあります。lib/asc.jar
を Flex SDK インストールディレクトリからtamarin-central/utils/
にコピーします。 - Tamarin 固有のスクリプトを
builtin.abc
にコンパイルするために asc.jar を使ってください:
$ cd tamarin-central/core $ java -ea -DAS3 -Xmx200m -DAVMPLUS -classpath ../utils/asc.jar \ macromedia.asc.embedding.ScriptCompiler -d -builtin -out builtin \ builtin.as Math.as Error.as RegExp.as Date.as XML.as builtin: 40999 Files: 6 Time: 1952 ms
アプリケーションのコンパイルに asc.jar
と builtin.abc
を使うことができるようになりました。
$ echo 'print("hello, world")' > hello.as $ java -jar ../utils/asc.jar -import builtin.abc hello.as hello.abc, 86 bytes written
アプリケーションを実行するには先ほどビルドした avmplus スタンドアローン実行ファイルを使います:
$ avmplus hello.abc hello, world
詳細は asc.jar
と avmplus
の -help
オプションを使ってください。
Tamarin 準拠テストを実行する
現在 Tamarin 準拠テストはインストールを確認するのに使うことができます。Tamarin テストスイートを実行するには以下の手順に従う必要があります:
-
AVM
環境変数をavmplus
実行ファイルのパスに設定する - 事前にコンパイルされた
.abc
テストファイルを使いたいなら、tamarin-test-abcs.tar.gz をtamarin-central/test
ディレクトリに展開します。 - テストをコンパイルしたいなら
$ASC
をasc.jar
の場所に、$GLOBALABC
をbuiltin.abc
の場所に設定します。 - テスト Perl スクリプトを実行します
test/runtests.pl
.
$ cd tamarin-central/test $ perl runtests.pl Test Time : 3 minutes 49 seconds passes : 54749 failures : 0
テストに失敗したら、runtests.pl
のデバッグフラグ (--d
) と詳細フラグ (--v
) が役立つでしょう。もし .abc
ファイルが不正であると avmplus
が報告したら、上記の手順 2 のファイルのダウンロードでバイナリ転送プロトコルを使ったか確認してください。