【发布时间】:2011-08-22 10:40:15
【问题描述】:
openFrameworks 和cocos2d 都有EAGLview.h 的包装器,当然你不能同时使用两者。只需将两个库(libcocos2d.a 和 libofxiPhone_iphoneos_Release.a)添加到我的项目中就会出现链接器错误:
ld: duplicate symbol _OBJC_METACLASS_$_ES1Renderer in /Developer/of_007_iphone/apps/cwi007/iTicTacToe/libofxiPhone_iphoneos_Release.a(ES1Renderer.o) and /Developer/of_007_iphone/apps/cwi007/iTicTacToe/libs/libcocos2d.a(ES1Renderer.o) for architecture armv7
collect2: ld returned 1 exit status
Command /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/g++-4.2 failed with exit code 1
我在 openFrameworks 中编写程序的核心,因为它很简单而且是 C++。我想在 cocos2d 中加入 UI、过渡、菜单等,因为它也很简单而且看起来不错。
我试过了
#define __OPENFRAMEWORKS__
在一个.h 文件中,并将另一个包装在
#ifndef __OPENFRAMEWORKS__
#endif
我想我可以用 cocos2d 添加的额外位“增强”openFrameworks 中的 .h,但随后 openFrameworks 无法构建,因为它不再有 EAGLview 的定义。
是否有使用两个这样的库的最佳实践,它们都利用相同的低级功能,在本例中为CoreAnimation?我可以编写自己的类来继承它们吗?有没有办法从我的项目中删除一个 .h 文件?
【问题讨论】:
标签: objective-c ios cocos2d-iphone openframeworks eaglview