C++ 在Objective-C中编译Eigen时遇到的问题(不是iPhone)

C++ 在Objective-C中编译Eigen时遇到的问题(不是iPhone),c++,objective-c,xcode,compiler-construction,eigen,C++,Objective C,Xcode,Compiler Construction,Eigen,我试图在Objective-C++XCode项目(针对MacOSX)中编译Egeng3库,它输出了200多个错误,就像是链接器错误一样。我在下面放了一张图片来显示第一个错误输出 我的项目是使用ObjtoE-C和C++(实际上是一个子弹物理定理),所以我 重命名了所有扩展名为.mm的文件 选中项目设置中的“编译为Objective-C++” 试图将“特殊”特征头的类型(无扩展)更改为不同的类型 但是什么都没用 我的程序文件中的#import运行良好,因为我可以看到XCode可以识别我的 Mat

我试图在Objective-C++XCode项目(针对MacOSX)中编译Egeng3库,它输出了200多个错误,就像是链接器错误一样。我在下面放了一张图片来显示第一个错误输出

我的项目是使用ObjtoE-C和C++(实际上是一个子弹物理定理),所以我

  • 重命名了所有扩展名为.mm的文件
  • 选中项目设置中的“编译为Objective-C++”
  • 试图将“特殊”特征头的类型(无扩展)更改为不同的类型
但是什么都没用

我的程序文件中的
#import
运行良好,因为我可以看到XCode可以识别我的

Matrix4f-eigenViewMatrix=Map(viewMatrix,4,4)

我想有一个标志要添加,但我找不到什么和在哪里。顺便说一下,我正在使用LLVM GCC 4.2编译器

如果能得到一些帮助,我将不胜感激。多谢各位


编辑

我在项目构建设置中启用了OpenMP和SSE,如下所示:

但我找不到“自动矢量化”

如果我包括

#include <iostream>
#include <Core>
#include <Dense>
#包括
#包括
#包括

在实现文件(.mm)中,与包含在全局头文件中相比,我的错误更少。错误现在只与Block.h和Memory.h有关

好吧,经过经验测试,我最终发现在所有调用之前,特征头调用必须是

在我的前缀头(.pch)中,我打了一些电话,因此我最终将其更改为:

//
// Prefix header for all source files of the 'h[Oz] Bullet' target in the 'h[Oz] Bullet' project
//

#ifdef __OBJC__
#endif

#include <iostream>
#include <Core>
#include <Dense>

#import <Quartz/Quartz.h>
#import <OpenGL/CGLMacro.h>
#import <OpenGL/gluMacro.h>
//
//“h[Oz]Bullet”项目中“h[Oz]Bullet”目标的所有源文件的前缀头
//
#ifdef__OBJC__
#恩迪夫
#包括
#包括
#包括
#进口
#进口
#进口

希望它能帮助别人

你说了一句很好用的话,你能说一句不好用的话吗?您可能需要从Eigen中包含更多内容,但很难说您提供的输出中没有不起作用的行。这是目前我节目中唯一的一行。我不知道该给你什么好让你明白。现在我启用了OpenMP和SSE,就像在这篇文章中找到的一样:但是没有办法。。。我可以显示我的文件结构可能是。。。