5月 25, 2009
Xcode + flex + fl.motion.*
Xcode+Flex3の環境で,fl.motionパッケージのBezierSegmentを使う際のメモ.
fl.motionパッケージは,Adobe Flash CS3では普通に使えるけど,Flex3には含まれていないみたい.そのため,コンパイルしようとしたら「型が見つからないか、コンパイル時定数ではありません」などとエラーがでてしまう.
結果からいうと,
- flパッケージを入手
- Stuffit Expanderで解凍(Mac OS X付属のアーカイブユーティリティ.appではだめ)
- 「flexのフォルダ>frameworks > libs」に入れる
主に,以下のことのために相当長い時間費やしてしまった.
- felxにflパッケージが入っていないということに気づくための時間
- Xcodeでの外部パッケージのパスの通し方を調べる時間
- fl.swcをどうやって手に入れたらいいかについて気づくための時間
以下は,経緯のメモ.
felxにflパッケージが入っていないということは,検索して同じように悩んでいる人がいたのですぐに分かった.
検索して調べると,解決方法が2つあるみたいだった.
- Adobe Flash CS3へクラスパスを通す.
- flパッケージを入手する方法
fl.* Package .swc | EVOLVE:Downloadsページ
SWCファイルとは,拡張子こそは.swcだけど,実際は,いくつかのファイルがzip圧縮されたものらしい.javaでいうと.jarのようなもの.この知識が結果的にあだになった.
ダウンロードする際,ダイアログで「アプリケーションで開く」と「ファイルを保存する」が選べるが,はじめ「ファイルを保存する」でダウンロードしたら「flswc.zip」というファイルがダウンロードされた.解凍すれば「fl.swc」が出てくると思い,ダブルクリックで解凍すると「library.swf」「catalog.xml」の2つのファイルがはいった「fl」フォルダが出てきてしまった.
ここで,swcがzipだということだったので,勝手に,拡張子の「zip」を「swc」に変更して,さらに「flswc.swc」を「fl.swc」にリネームして強制的に作ってみた.
実はこれがまずくて,普通に,解凍する際に,「Stuffit Expander」を使えば,「fl.swc」というファイルが出てきて,何の問題もなかった.もしくは,ダウンロードする際,ダイアログで「アプリケーションで開く(Stuffit Expander)」で,ダウンロードすれば問題なかった.
このあと,環境設定の「ソースツリー」などに,パスを追加しようとしてうまくいかず,しばらくXcodeのパスの通し方で時間を費やしてしまう.
その調べ中に「fl.swc」を,flex sdkをインストールしたフォルダの中の「frameworks > libs」フォルダに入れるだけで良いと知り,コンパイルしてみると,今度はどうやら「fl.swc」は認識しているようだけど,「catalog.xmlが読み込めません」というようなエラーが出た.
ここでやっと,パスの通し方ではなく「fl.swc」自体が問題あることが分かったので,もう一度調べてたら,Mac OS X付属のアーカイブユーティリティ.appではだめ,らしいという情報があったので,試しにダウンロードする際に,Stuffit Expanderで解凍したら普通に「fl.swc」が出てきた.
相当時間無駄にした.
[...] This post was mentioned on Twitter by kamise. kamise said: