ANE : “ld warning: unexpected srelocation type 9” なんてエラー出たらココ確認

スポンサーリンク

ANE使っててビルド時に

“ld warning: unexpected srelocation type 9”

ってエラー出たら。

Flash Builderの場合、Flexビルドのパッケージ>Apple iOS>ネイティブエクステンション タブの「Apple iOS SDK」欄に

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk

(Xcode4.3.2の場合)
と入れるとエラーなくビルドできるようになりました。

ADTの場合は、

 -platformsdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk

と「-platformsdk」を追加すべしかな。

※有川さん(@_AKB7_)のアドバイスを受け、上条さんブログ「iOS 限定:外部ライブラリの指定」を試したところ、即解決。

追記(2012.06.13)
Flash Professional CS6の場合は、AIR for iOS設定ダイアログ内に「iOS SDK」欄があるので、同様のパスを入れるべしです。

追記2(2012.06.14)
Flash Professional CS6の「iOS SDK」欄はANEを追加したファイルでないと表示されないかもです。普通のAIR for iOSのファイルでは表示されてませんでした。
ANEを追加したファイルでは、↓ダイアログの最下部にあります。

追記3(2012.06.14)
Flash Professional CS6の場合は、”ld warning: unexpected srelocation type 9″というエラーを出さずに、パブリッシュ時に後7秒あたりで、Flashごと落ちる場合があります。「外部ライブラリを使ったANEを利用している+パブリッシュ時にクラッシュ」の場合は、この問題の可能性が高いです。

コメント

  1. […] 定したADTを叩くとかさくっと解決できそうな方法は見つからず。 一番簡単そうなのは、MUSHIKAGO APPS MEMO さんの記事で、FlashBuilderなら「Apple iOS SDK」という項目に最新のiOSのSDKを指定しておけ […]