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,过渡,菜单等,因为它也很简单,看起来很漂亮。
I tried
#define __OPENFRAMEWORKS__
放在一个.h
文件中,另一个放在
#ifndef __OPENFRAMEWORKS__
#endif
认为我可以用cocos2d添加的额外位"增加"openFrameworks中的.h
,但随后openFrameworks不会构建,因为它不再有EAGLview
的定义。
是否存在这样的两个库的最佳实践,它们都使用相同的底层功能,在本例中是CoreAnimation
?我可以编写自己的类来继承它们吗?有没有办法从我的项目中删除一个.h
文件?
尝试包含cocos2d.h
头,EAGLview.h
包含在原始openFrameworks代码中(即ofMain.h
),反之亦然。