guram journal

Icon

Just another WordPress weblog

Xcode + flex + fl.motion.*

Xcode+Flex3の環境で,fl.motionパッケージのBezierSegmentを使う際のメモ.
fl.motionパッケージは,Adobe Flash CS3では普通に使えるけど,Flex3には含まれていないみたい.そのため,コンパイルしようとしたら「型が見つからないか、コンパイル時定数ではありません」などとエラーがでてしまう.

結果からいうと,

  1. flパッケージを入手
  2. Stuffit Expanderで解凍(Mac OS X付属のアーカイブユーティリティ.appではだめ)
  3. 「flexのフォルダ>frameworks > libs」に入れる
だけで良かった.

主に,以下のことのために相当長い時間費やしてしまった.
  • felxにflパッケージが入っていないということに気づくための時間
  • Xcodeでの外部パッケージのパスの通し方を調べる時間
  • fl.swcをどうやって手に入れたらいいかについて気づくための時間
最後は,Xcodeでパスを通す方法で悩んでいたけど,結果的には,ダウンロードしたファイルの解凍方法がまずくて,その後も,無駄なエラーが出てしまっていた.

以下は,経緯のメモ.

felxにflパッケージが入っていないということは,検索して同じように悩んでいる人がいたのですぐに分かった.
検索して調べると,解決方法が2つあるみたいだった.
  1. Adobe Flash CS3へクラスパスを通す.
  2. flパッケージを入手する方法
1の方法は,Flash CS3を持っていない人はできない(体験版をダウンロードしている人もいた)ので,2の方法で解決することにした.以下のサイトで配布している,flパッケージをSWCいう形式のファイルを手に入れれば良いとのこと.
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」が出てきた.

相当時間無駄にした.

Category: MEMO

Tagged: , ,

One Response

  1. [...] This post was mentioned on Twitter by kamise. kamise said:

Leave a Reply

カテゴリー