简体   繁体   English

找不到Cocos2d-x 3.X构建Android“ cocos2d.h”文件

[英]Cocos2d-x 3.X build Android “cocos2d.h” file not found

I am using build_native.py to build to Android platform, but it says "fatal error: fatal error:'cocos2d.h' file not found". 我正在使用build_native.py构建到Android平台,但显示“致命错误:致命错误:找不到'cocos2d.h'文件”。 Before this problem it says can't import import module and I set NDK_MODULD_PATH in environment variable to fix it I don't know if this cause this problem. 在出现此问题之前,它说无法导入导入模块,并且我在环境变量中设置了NDK_MODULD_PATH来解决该问题,我不知道这是否会导致此问题。

In file included from jni/hellocpp/main.cppIn file included from 

jni/../../Class
es/AppDelegate.cppIn file included from jni/../../Classes/GameOverScene.cpp:1:
::jni/../../Classes/GameOverScene.h1:
:4:10: jni/../../Classes/AppDelegate.hfatal error: :4'cocos2d.h' file not found1
:

In file included from #include "cocos2d.h"

this is my Android.mk 这是我的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/Adapter.cpp \
                   ../../Classes/ControlLayer.cpp \
                   ../../Classes/GameOverScene.cpp \
                   ../../Classes/GameRunScene.cpp \
                   ../../Classes/GameStartScene.cpp \
                   ../../Classes/SceneManager.cpp \
                   ../../Classes/HelloWorldScene.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../cocos2d/cocos/physics
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../Classes

LOCAL_C_INCLUDES += $(LOCAL_PATH)/../../libcocos2d

LOCAL_STATIC_LIBRARIES := cocos2dx_static
LOCAL_STATIC_LIBRARIES := cocos2dx_extension_static

LOCAL_LDLIBS += -L$(call host-path,$(NDK_ROOT)/sources/cxx-stl/llvm-libc++/libs/$(TARGET_ARCH_ABI)) -lc++_static

include $(BUILD_SHARED_LIBRARY)

$(call import-module,./prebuilt-mk)

In this situation, most error comes from wrong Path setting of NDK_MODULD_PATH . 在这种情况下,大多数错误来自NDK_MODULD_PATH错误路径设置。 I once met this error when using Cocos2d-x 2.2.6. 使用Cocos2d-x 2.2.6时,我曾经遇到此错误 And I suggest you checking the path of NDK_MODULE_PATH again to set it to 我建议您再次检查NDK_MODULE_PATH的路径以将其设置为

${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/source;${COCOS2DX_ROOT}/cocos2dx/platform/third_party/android/prebuilt

replace ${COCOS2DX_ROOT} to your own path. 将$ {COCOS2DX_ROOT}替换为您自己的路径。 You can also check this article , although it is talking about Cocos2d-x 2.x. 您也可以查看本文 ,尽管它是在谈论Cocos2d-x2.x。

I miss this error also when I use cocos2d-x-3.7.My solution is at jni/Android.mk set: 当我使用cocos2d-x-3.7时我也错过了这个错误,我的解决方案是在jni / Android.mk设置的:

LOCAL_STATIC_LIBRARIES := cocos2d_lua_static LOCAL_STATIC_LIBRARIES:= cocos2d_lua_static

see more at this FixBug 在此FixBug上了解更多

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM