2

我正在使用cocos2d-x版本3.3rc 在我的一些课程中,#include "cocos2d/external/json/writer.h" 当我想编译我的项目以制作 android apk 时,通过运行build_native.py脚本,它向我显示以下错误:

fatal error: cocos2d/external/json/writer.h: No such file or directory

但我使用以下语法将其文件包含在我的 android.mk 文件中:

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
                    $(LOCAL_PATH)/../../cocos2d/external/json \

这是完整的 android.mk 文件:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

$(call import-add-path,$(LOCAL_PATH)/../../cocos2d)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external)
$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos)


LOCAL_MODULE := cocos2dcpp_shared

LOCAL_MODULE_FILENAME := libcocos2dcpp
LOCAL_SRC_FILES := hellocpp/main.cpp \
                    ../../Classes/AppDelegate.cpp \
                    ../../Classes/Database/CacheData.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes \
                    $(LOCAL_PATH)/../../cocos2d/external/json 

#LOCAL_STATIC_LIBRARIES := cocos2dx_static

LOCAL_WHOLE_STATIC_LIBRARIES += cocos2dx_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocosdenshion_static
LOCAL_WHOLE_STATIC_LIBRARIES += box2d_static
LOCAL_WHOLE_STATIC_LIBRARIES += chipmunk_static
LOCAL_WHOLE_STATIC_LIBRARIES += cocos_extension_static
LOCAL_WHOLE_STATIC_LIBRARIES += json_external_static


include $(BUILD_SHARED_LIBRARY)

$(call import-module,.)

我该如何解决这个问题?

4

1 回答 1

1

我找到了解决方案。在 cocos2d-x 3.3 版中,生成的默认android.mk文件就足够了,并且所有其他库都已导入。然后 jni 文件夹中的默认 android.mk 文件与其他 .mk 文件完全集成。我看到位于'cocos2s/external/json'的 json 文件夹中的文件是 .h 文件,它们与其他 cocos2d 文件和库之间没有依赖关系。然后我只需将此文件夹复制到我的 Classes 文件夹并在本地包含它们。现在问题解决了:)

于 2014-11-29T10:40:31.083 回答