最近在写一个Android上的小程序。需要用到编辑框控件,刚好cocos2d-x 的 extensions 目录下有实现了这样的控件。
写完代码使用 Eclipse 编译时却报下面的错误。
错误分别提示:
1. fatal error: cocos-ext.h: No such file or directory
2.
undefined reference to `cocos2d::extension::CCScale9Sprite::create(char const*)
undefined reference to `cocos2d::extension::CCEditBox::create(cocos2d::CCSize const&, cocos2d::extension::CCScale9Sprite*, cocos2d::extension::CCScale9Sprite*, cocos2d::extension::CCScale9Sprite*)'
从提示可以看出是库的头文件,还有 Lib 没有包含。但是之前用的是 VC平台,所以一直纠结 Eclipse 软件怎么设置这个目录。
网上找了很久都没有类似的问题。无意中在 proj.android/jni/Android.mk 找到了可以配置的地方:
现将需要修改的代码贴出:
LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
$(LOCAL_PATH)/../../../../../extensions \
$(LOCAL_PATH)/../../../../../extensions/GUI/CCControlExtension
LOCAL_WHOLE_STATIC_LIBRARIES := cocos2dx_static \
+= cocos_extension_static
$(call import-module,cocos2dx) \
$(call import-module,extensions)
红色部分是我添加的内容,望遇上这种错误的同学,能够及时帮到你。