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 , потому что это также просто и выглядит красиво.
Я пробовал
#define __OPENFRAMEWORKS__
в одном .h
file, и оборачивая другой в
#ifndef __OPENFRAMEWORKS__
#endif
, полагая, что я могу "увеличить" .h
в openFrameworks с помощью дополнительных битов, добавленных cocos2d, но тогда openFrameworks не будет собираться, потому что он больше не имелопределение для EAGLview
.
Есть ли наилучшая практика для работы с двумя библиотеками, подобными этой, которые обе используют одну и ту же низкоуровневую функциональность, в данном случае CoreAnimation
?Могу ли я написать свой собственный класс, который наследует от них обоих?Есть ли способ вырезать один из .h
файлов из моего проекта?