macにActionScript3.0のコマンドラインベースの開発環境構築
環境:Leopard(10.5.8), MacBookPro(Early2008), Ruby 1.8.6
ActionScriptを少し触ることになったので、快適そうな開発環境を整えてみた.
まず,エディタはvimを使いたいのでASのシンタックスファイルを探す.
こちらのページ(http://blog.quall.net/program/231/)を参考にさせて頂き,
シンタックスファイルは下記サイトから頂戴しました.
http://www.abdulqabiz.com/blog/archives/flash_and_actionscript/vim_actionscript_and.php
次にコンパイル等の環境は下記のサイトを参考に,FlexSDK + rascutをインストール.
http://yoppa.org/ssaw08.php?itemid=831
http://builder.japan.zdnet.com/sp/open-source-software-moonlinx-2009/story/0,3800096543,20398746,00.htm
http://as-users.jp/helloworld/index.html
下記ページからFlex SDKをダウンロード.
http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK
今回入れたのはVersion 3.5.0 build 12683.
インストール先は/Developer/SDKs/
パスとなんかのおまじないを.bash_profileに追加
(Flex SDKのディレクトリ名は適宜読み替え)
export PATH=/Developer/SDKs/flex_sdk_3/bin:$PATH export _JAVA_OPTIONS="-Duser.language=en -Dfile.encoding=UTF-8"
このおまじないはコンパイラが日本語で起動して不具合を起こすのを避けるためらしい.
mxmlcというコマンドがあるか確認.whichコマンドってのを使うといいらしい.
$ which mxmlc /Developer/SDKs/flex_sdk_3.5.0.12683/bin/mxmlc
今まで,コマンドがあるか確認するのって2,3文字打ってタブで補完されるかどうかで確認してたw
続いて,rascutをインストールするが,Rubyのバージョンが1.8.6でないとダメらしい.
$ ruby --version ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0]
何もいじってないと思うが,とりあえずOK.
$ sudo gem install rascut --include-dependencies
これいっぱつでいけるはずだったのにrascutがローカルにもリポジトリにもないと言われる.
これはgemのバージョンが古かったためらしいのでgemを更新.
$ sudo gem update --system
もともとのバージョンはわからなくなってしまったが,とりあえずRubyGem 1.3.5ってのになった.
再びrascutをインストールしてみるとすんなり通って,
json_pure-1.2.0
rascut-0.2.1
がインストールされた.
mongrelってやつはもとから1.1.4ってのが入っていたっぽい.
とりあえず,これで環境は整ったと思うのでHelloWorldさんを試してみる.
$ rascut -s HelloWorld.as [01/13 04:44:57] Start Mongrel: http://0.0.0.0:3001/ [01/13 04:44:57] Compile Start [01/13 04:44:58] Found update file(s)["./HelloWorld.as", "./omikuji.as"] [01/13 04:45:03] fcsh: Assigned 1 as the compile target id Loading configuration file /Developer/SDKs/flex_sdk_3.5.0.12683/frameworks/flex-config.xml /Volumes/HDD2/WorkingDir/asTest/HelloWorld.swf (607 bytes)
ブラウザで http://0.0.0.0:3001/ にアクセス.
すばらしい!!
なんか別のASファイルも更新を確認してくれてるしw
ASもちょこっと触るだけだとは思うが,とりあえずすばらしい!