最近在写一个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)
红色部分是我添加的内容,望遇上这种错误的同学,能够及时帮到你。
本文介绍了解决在Android项目中使用cocos2d-x提供的控件(如CCEditBox)时遇到的编译错误的方法。通过修改Android.mk文件中的LOCAL_C_INCLUDES变量,确保所有必要的头文件和库被正确包含,成功解决了fatal error和undefined reference错误。
3576

被折叠的 条评论
为什么被折叠?



