2012-06-02 124 views
4

我正在嘗試設置一個iOS項目來編譯稱爲Eigen的線性代數數學庫。設置iOS項目以使用特徵

我開始跟隨的問題中提到的說明:

How to compile Eigen in iPhone

但仍有某種東西我無法弄清楚。

  1. User Stafan說要設置正確的編譯器標誌(-mfpu = neon -mfloat-abi = softfp)。我在哪裏設置這些標誌?我已經發現爲像http://meandmark.com/blog/2011/10/xcode-4-setting-compiler-flags-for-a-single-file/這樣的單個文件設置標誌。但是,我需要什麼文件來設置這個標誌?特別是來自Eigen庫的C++文件不會出現在這裏。
  2. 用戶布魯基說,他使用armv7優化拱建設。在構建設置中,我在架構類別中看到一個標準(armv7)的綠色字段是什麼權利?

我剛剛創建了一個,, singleViewApplication'',並希望在一個名爲MathLibary的新Objective C類中使用C++文件。因爲有些人說如果我命名類MathLibary.hh和MathLibary.mm,就可能混合使用Objective C和C++。 類看起來像

#import "MathLibary.hh" 
#define EIGEN_DONT_VECTORIZE 
#import "SVD.h" 
@implementation MathLibary 

@end 

當我嘗試運行應用程序的構建失敗的編譯器給出了一些錯誤,如: 在第47行中SVD.h文件,該文件是:

typedef typename NumTraits<typename MatrixType::Scalar>::Real RealScalar; 

錯誤類型名稱後期望一個合格的名稱

對我來說,這聽起來像編譯器試圖編譯SVD.h作爲目標c文件,但是C++。

  • 如何更改編譯器從庫編譯用戶界面客觀C文件和C++文件
  • 我希望有人能夠幫助我,非常感謝。

    回答

    3

    如果你想混合ObjC和C++,你有沒有確定重命名你的文件有一個「.mm」後綴? :)