0

Accelerate フレームワークを使用して、iPhone で実行しているコードのパフォーマンスを向上させています。Accelerate から vdsp と vfp の 2 つのヘッダーが必要です。vDSP は完全に機能しますが、vfp の関数を使用すると「宣言されていない識別子の使用」が発生します。

ここで奇妙なことがあります: シミュレーターで実行すると、コードは (エディターがまだエラーを指していても) うまく動作し、vfp で使用される関数から期待される結果が表示されます。しかし、デバイスで実行しようとすると、エラーが発生します。

これは、ファイルが正しくリンクされていることを意味します。関数は機能しますが、宣言されていない関数がまだ表示されているため、XCode は混乱しています。それとも、iOS が vfp をサポートしていないということですか? ベクトルプロセッサを使用している場合でも、そうする必要があります。助けてください :)

4

1 に答える 1

2

vfp.hヘッダーを見てください:

extern vFloat vceilf( vFloat A ) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_NA);

__IPHONE_NA「iOSでは利用できません」を意味します。iOS 4.x の Accelerate フレームワークは、vDSP、LAPACK、および BLAS ライブラリのみで構成されています。あなたに役立つ機能をリクエストするには、バグを報告してください!

于 2011-08-19T06:15:46.987 に答える