我有一个工作的Xcode项目,在其中一个视图中包含Cocos2d。我现在需要添加Box2d。我试图拖动文件夹的Box2D到我的cocos2d-2.X-ARC-的iOS文件夹的目录库和添加到目标,但我得到这个当我编译:如何添加Box2d到现有的Xcode/Cocos2d项目
(in b2BroadPhase.cpp)
'Box2D/Collision/b2BroadPhase.h' file not found
我敢肯定,这只是我会得到的许多错误中的第一个。我错过了什么步骤来获取我的项目中编译的所有Box2d文件?
所有box2d文件都列在cocos2d-library目标的编译源中。
为什么这很难做到?为什么它不像其他图书馆一样工作?
而且 - 我是否必须将我的项目中的每个.m都重命名为.mm?这几乎是不可能的,因为这是一个包含许多文件的大型xcode项目。我只是想在一个视图中使用Box2d。
响应由LearnCocos2D-
我的文件夹结构(在Finder中)给出了答案附加信息是这样的:
根= MyProject.xcodeproj,MyProject的文件夹,的cocos2d-2。 x-ARC-iOS文件夹 在cocos2d-2.x-ARC-iOS文件夹中有一个名为libs的文件夹。该文件夹我有Box2D的文件夹,用cocos2d的,CocosDenshion一起,等里面
在Xcode我有一个项目(MyProject的) 和2个目标(cocos2d的库,MyProject的) 有“头搜索路径”为PROJECT和TARGETS。我设置了哪一个?它应该是递归的还是非递归的?当我将Box2D文件夹拖放到Xcode中时,我将其设置为哪个目标?
我的项目文件位于/ Users/me/Dropbox/iOS/MyProject。那么,我为什么要为标题搜索路径输入? /Users/me/Dropbox/iOS/MyProject/cocos2d-2.x-ARC-iOS/libs似乎不起作用。
另一个更新 - /Users/me/Dropbox/iOS/MyProject/cocos2d-2.x-ARC-iOS/libs作为MyProject的目标标题搜索路径似乎得到了我过去的Box2D的错误。然后我有一个'cassert'文件找不到错误。通过改变视图控制器,它是父视图,并将AppDelegate改为文件类型“Objective-C++ Source”,就像你所建议的那样。而现在...
现在我已经在NSObjCRuntime.h NSZone.h,NSObject(预期的非限定id,未知的类型名称'NSString',等等)中出现了一连串的错误。所以看起来你要么使用Box2d/Cocos2d创建应用程序,要么创建一个UIKit应用程序。试图让两者都是一个完整的噩梦。
非常感谢您的帮助。我将在编辑原始问题时解释我目前的尝试,因为我仍然遇到同样的错误。 – soleil 2013-03-03 03:49:36
我已经做了上面的编辑。你能否详细说明如何检查我的搜索路径是否正确?我不明白你的回应的一部分。谢谢! – soleil 2013-03-03 04:03:31
因为Box2D已经在搜索路径中包含了Box2D文件夹,所以减少了一级是什么让它终于为我工作!并且不要忘记把“”(如果Box2D在你的项目文件夹“$(SRCROOT)”)之间的“”之间的serach路径将做的窍门 – 2013-08-04 08:25:27