我在这方面能找到的所有说明/教程都不起作用,因为 Xcode 在每个版本中都会更改构建设置等。有人在 Xcode 4.6 中做过这个吗?我有一个项目需要一些 Cocos2d 视图。我还需要Box2d。
这是我所做的。
- 基于 Cocos2d with Box2d 模板创建一个新项目。关闭此项目。
- 在 Finder 中导航到新应用的 cocos2d 项目文件夹。在 cocos2d 项目文件夹中找到名为 libs 的子文件夹。将 libs 文件夹拖到我当前的项目中。
- 添加所有必要的库
起初它找不到kazmath.h。我修好了。然后它找不到 Box2d 碰撞类。解决了这个问题。现在我在 CCActionCamera 中遇到错误(ARC 禁止自动释放):
@implementation CCOrbitCamera
+(id) actionWithDuration:(float)t radius:(float)r deltaRadius:(float) dr angleZ:(float)z deltaAngleZ:(float)dz angleX:(float)x deltaAngleX:(float)dx
{
return [[[self alloc] initWithDuration:t radius:r deltaRadius:dr angleZ:z deltaAngleZ:dz angleX:x deltaAngleX:dx] autorelease];
}
我觉得这将是一个无穷无尽的错误列表。我只是希望有一种方法可以在项目中简单地使用 Cocos2d。
编辑#2:将-fno-objc-arc
标志添加到所有 Cocos2d 文件后:
Undefined symbols for architecture armv7s:
"_ExtAudioFileSetProperty", referenced from:
_CDloadCafAudioData in CDOpenALSupport.o
"_ExtAudioFileRead", referenced from:
_CDloadCafAudioData in CDOpenALSupport.o
"_AudioFileReadBytes", referenced from:
_CDloadWaveAudioData in CDOpenALSupport.o
"_ExtAudioFileDispose", referenced from:
_CDloadCafAudioData in CDOpenALSupport.o
"_AudioFileOpenURL", referenced from:
_CDloadWaveAudioData in CDOpenALSupport.o
"_AudioFileGetProperty", referenced from:
_CDloadWaveAudioData in CDOpenALSupport.o
"_ExtAudioFileGetProperty", referenced from:
_CDloadCafAudioData in CDOpenALSupport.o
"_AudioFileClose", referenced from:
_CDloadWaveAudioData in CDOpenALSupport.o
"_ExtAudioFileOpenURL", referenced from:
_CDloadCafAudioData in CDOpenALSupport.o
"_AudioSessionGetProperty", referenced from:
-[CDAudioManager isOtherAudioPlaying] in CDAudioManager.o
-[CDAudioManager isDeviceMuted] in CDAudioManager.o
ld: symbol(s) not found for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)