Setup

初期設定のやりかた

Linux

  • haXe のインストール
  • haxelib の設定
  • sandy, XPath for haXe のインストール
  • チェック

haXe のインストール

haXe のパッケージが存在する場合はそれを使って下さい。Debian 系では存在すると思います。 存在しない場合は haXe を手動でインストールします。

  • まず、haXeのサイトから linux 用のインストーラ(hxinst-linux.tgz)を download します。
  • パッケージを展開します。
    % tar zxvf hxinst-linux.tgz
    
  • どうも勝手に /usr/lib にインストールされるみたいなので、root になって、インストーラを実行します。インストールされるか? みたいな質問に y と答えればおっけーです。
    % sudo ./hxinst-linux
    

これだけで多分インストールは終了です。/usr/bin/haxe とか /usr/lib/haxe が存在することを一応確認してもいいです。 公式の情報も参考にして下さい。

haxelib の設定

haxelib はまぁなんかライブラリです。perl でいうとこの CPAN みたいなもんです。 とりあえずこれの設定をしないと、sandy とかが使えないので必須の設定です。

とりあえず先に公式のセットアップガイドを載せておきます。 別に見なくてもなんとかなります。

まず、ディレクトリを用意します。このディレクトリは書き込み権限が欲しいです。 なので、公式のように /usr/lib に叩き込むよりもユーザのホームディレクトリ以下に作ったほうがいいような気がします。個人的に。 まぁ好きなように設定して下さい。以下は例。てきとーに読みかえるなりなんなりしてください。

% mkdir -p /home/tamanegi/haxe/lib

次に haxelib のセットアップを実行します。

% haxelib setup
エラってしぬ場合は、libgc うんちゃらだったら gc (fedora), libgc1c2 (ubuntu) パッケージを、 pcre という文字が見えたら pcre (fedora), libpcre3 (ubuntu) パッケージをインストールして下さい。 x86_64 環境の場合は gc.i686 とか pcre.i686 とかをインストールするといいでしょう。以下のガイドも参考にどうぞ。

ちなみに fedora の場合、pcre (x86_64 なら pcre.i686) をインストールしただけではダメで以下の コマンドを実行する必要があるげです。

% sudo ln -s /lib/libpcre.so.0.0.1 /lib/libpcre.so.3

さて、本題に戻って haxelib setup を実行すると、パスを尋ねられるので、先ほど作ったディレクトリを入力して下さい。 これで設定は完成するはずです。

Sandy, XPath for haXe のインストール

haxelib の設定ができていれば、

% haxelib install sandy
% haxelib install xpath
で終了です。上で設定したディレクトリに sandy とか xpath が入っているのが確認できるはずです。

チェック

とりあえずできたげなのでチェックするです。そういえばほったらかしな Watermelon を展開して src ディレクトリへ。

% tar zxvf Watermelon-26-09-2011.tar.gz
% cd Watermelon-26-09-2011/src

で、samples のファイルを作成することでチェックします。

% touch Main.hx
% make samples
特にエラーがでなければおっけーです。touch は Makefile をちょろまかすためにやってるだけです。 samples 以下の swf ファイルを Adobe の Projector Content Debugger なり、ウェブブラウザで見える かどうか確認すればいいと思います。このサンプルはこの wiki に貼られているものと同一のはずです。

sandy の TextLink.hx でエラーがでる場合

今このセットアップを試していたら sandy 3.1.2 の TextLink.hx:68 でエラーがでました。 このエラーは sandy/3,1,2/core/interaction/TextLink.hx の 68 行目の

    var openA   : EReg = ~/<A.*?\>/i;
となっている部分がおかしげなので、
    var openA   : EReg = ~/<A.*?>/i;
となおせば一応なんとかなるっぽいです。

Windows

いつかだれかが

Mac

同上