Macでflex2環境作った

インストール

まず、flex2SDK のサイトへ行き、Flex SDK, Flex Language Pack を落とす。

Flex SDK の中に、 Flex Language Pack 内のファイルをディレクトリごとに配置する。MacのFinderで同じディレクトリ上書きすると、前にあった中身消しちゃうんだねー。

あとは Fles SDK ディレクトリのbinにパスを通せばいいみたい。

flexのコンパイルはやたら時間がかかるそうなので、Flex Compiler Shell を導入。ダウンロード、解凍したファイルをFlex SDK の該当のディレクトリに一緒に入れて置けばそのまま使える。

あと、ActionScript3 (mxmlc) でのコンパイルを100倍速にする方法 に書いてあった rlwrap というのも入れた。上下キーで履歴辿れたりするみたい。

rlwrap は port で入る。

$ sudo port install rlwrap

これで環境構築は終わり。

fsch はこんな感じに使うみたい。

chu@chu-mac:~/flex$ rlwrap fcsh
Adobe Flex Compiler SHell (fcsh)
Version 2.0.1 build 159086
Copyright (c) 2004-2006 Adobe Systems, Inc. All rights reserved.

(fcsh) mxmlc hello.mxml
fcsh: Assigned 1 as the compile target id
設定ファイル "/Developer/SDKs/flex/frameworks/flex-config.xml" をロードしていま##
/Users/chu/flex/hello.swf (126938 bytes)
(fcsh) compile 1
設定ファイル "/Developer/SDKs/flex/frameworks/flex-config.xml" をロードしていま##
Nothing has changed since the last compile. Skip...
/Users/chu/flex/hello.swf (126939 bytes)
(fcsh) 

rlwrap で fsch を起動して、そのシェル内で mxmlc コマンドを叩く。するとfcsh: Assigned 1 as the compile target id と出るので、次回からは compile 1 と id を指定することで、メモリ上に展開されたソースを瞬時にコンパイルしてくれるみたい。上の実行例だと、差分がなかいので何もしなかった様子。

fcwrap

インストール

コンパイルするの結構めんどくさいと思っていたら、fcwrap というのがあった。webrick でサーバが常時立ち上がってて、ソースの更新ごとにコンパイルしてブラウザをリロードしてくれるとても良いもの。

http://saqoosha.net/2007/03/25/534/

Rails環境がそろってれば、3あたりからで大丈夫な感じ。

3. gemsいろいろ
$ sudo gem install rails hoe mongrel rack --include-dependencies

4. fcwrap
$ svn co svn://rubyforge.org/var/svn/hotchpotch/fcwrap fcwrap
$ cd fcwrap
$ sudo rake install_gem

使い方

$ fcwrap -s hello_world.mxml

として、http://0.0.0.0:3001/ を開いておきます。 hello_world.mxml に更新があるたびにブラウザ側で勝手にロードしてくれます。

rascut

fcwrapの後継で高機能版の rascut というのが出ていたみたい。

インストール

$ sudo gem install rascut --include-dependencies

使い方

$ fcwrap hello_world.mxml -s

とするとサーバモードで起動して、http://0.0.0.0:3001/ を開いておきます。 hello_world.mxml に更新があるたびにブラウザ側で勝手にロードしてくれます。

プリントデバッグ

http://subtech.g.hatena.ne.jp/secondlife/20070219/1171872801

から log.as を頂いてくる。flex-config.xml に以下のように書くみたいなんだけど、その mxml ファイルがあるディレクトリに置いたら import せずにそのまま使えた。


  /path/to/

以下のように書いたら、fcwrap 立ち上げて firefox の firebug の console でプリントデバッグ出来ました。AS3 の文法わからなすぎて、なんで log.as が呼ばれるのか分かってないけど、環境そろったので始めよう。

   private function sayHello():void{
     log('hello !');
   }
Macでflex2環境作った