2011-08-18 30 views
0

我正在使用Accelerate框架來提高我在iPhone上運行的一段代碼的性能。 我需要兩個來自Accelerate的頭文件,它們是vdsp和vfp。 vDSP完美運行,但是當我使用vfp中的函數時,我得到了「使用未聲明的標識符」。加速框架中的vfp.h沒有鏈接到XCode 4.0.2

這是奇怪的事情: 當我在模擬器上運行時,我的代碼運行良好(即使編輯器仍然指向一個錯誤),我期望從vfp中使用的函數的結果在那裏。 但是,當我嘗試在設備上運行時,出現錯誤。

這意味着我有我的文件鏈接正確。由於該功能起作用,但由於XCode仍然表示未聲明的功能,因此它很困惑。還是iOS不支持vfp?即使使用矢量處理器,它們也應該如此。 請幫助:)

+0

您可能想從此問題中刪除「vfp」標記。在StackOverflow上,「vfp」標籤引用「Visual FoxPro」;你可以看到,如果你將鼠標懸停在標籤上。 –

+0

根據添馬艦的評論刪除了「vfp」標籤。 –

回答

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庫。請提交錯誤以請求對您有用的功能!

+1

在不破壞NDA的情況下,他們也可能希望閱讀iOS 5.0上的API差異:http://developer.apple.com/library/prerelease/ios/#releasenotes/General/iOS50APIDiff/index.html。 –