Xcode 5 - 不同的框架都“导入”NSobject,导致重复定义

时间:2013-11-03 16:04:25

标签: c++ deployment duplicates xcode5

升级到Xcode 5后,我无法构建我的应用程序!它总是有错误Duplicate interface definition for class 'NSObject'

我目前正在研究Pacman的C ++版本,该版本使用SDL(以及混音器,tff等)和OpenGL。似乎错误在于,在许多框架中,某些内容正在变为imported而不是included,,因此编译器变得混乱。奇怪的是,没有代码发生变化,应用程序在Xcode 4中运行良好,但是现在我已经升级它仍然无法构建。

我拍了一个截图,向您展示发生错误的文件。 Pic of the error

以下是在每个文件中抛出错误的行:

  • 在第一个文件中:#include "SDLMain.h"
  • 在第二个文件中:#import <Cocoa/Cocoa.h>
  • 在第三个文件中:#import <Foundation/Foundation.h>
  • 在第四个文件中:#import <Foundation/NSArray.h>
  • 在第五个文件中:#import <Foundation/NSObject.h>

我查看了this问题,删除了我的搜索路径并重新添加了唯一需要的搜索路径,但错误仍然存​​在。

那么发生了什么,我需要做些什么来解决它?我对import,知之甚少,只是在大多数情况下我们应该远离它并使用include代替。

修改

好吧,经过几个令人沮丧的几周搞乱设置后,我找到了一个解决方案。 (或者至少是一种解决方法。)

到达此页面后, A pic of the project info tab in Xcode http://eclipsesource.com/blogs/wp-content/uploads/2012/06/ProjectInfo.png

我将OS X deployment target更改为10.7,然后应用程序正常运行。 (想象一下,这张照片是OS X应用程序,而不是iOS应用程序)如果我将目标设置为10.8或10.9,该应用程序将无法正常工作。但如果它是10.7或更低,没有问题。

我很高兴我可以恢复这个项目的工作,但我仍然在想......为什么这会解决我的问题?

0 个答案:

没有答案