我正在尝试建立一个 iOS 项目来编译一个名为 Eigen 的 C++ 库,用于线性代数数学。
我开始遵循以下问题中提到的说明:
但是还是有一些我想不通的事情。
- 用户 Stafan 说要设置正确的编译器标志 (-mfpu=neon -mfloat-abi=softfp)。我在哪里设置这些标志?我已经发现要为单个文件设置标志,例如http://meandmark.com/blog/2011/10/xcode-4-setting-compiler-flags-for-a-single-file/。但是我需要为哪些文件设置此标志?尤其是来自 Eigen 库的 c++ 文件没有出现在这里。
- 用户 Blukee 说他在构建设置中使用了 armv7 优化的 arch。在构建设置中,我在 Architectures 类别中看到一个绿色字段,上面写着 Standard(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
当我尝试运行应用程序时,构建失败,编译器会给出一些错误,例如:在 SVD.h 文件的第 47 行,即:
typedef typename NumTraits<typename MatrixType::Scalar>::Real RealScalar;
错误是“类型名称”之后的预期名称
对我来说,听起来编译器试图将 SVD.h 编译为目标 c 文件,但它是 c++。
- 如何更改编译器以编译用户界面的目标 c 文件和库中的 c++ 文件
我希望有人能够帮助我,非常感谢。