cocos2d-x 和 运行 在 android Studio 中

cocos2d-x and run in android Studio

我将 运行 在 android Studio 中创建一个 cocos 项目,但是当键入命令 cocos compile -p android in cmd.exe 时说ndk 中的错误。 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/HelloWorldScene.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes

# _COCOS_HEADER_ANDROID_BEGIN
# _COCOS_HEADER_ANDROID_END


LOCAL_STATIC_LIBRARIES := cocos2dx_static

# _COCOS_LIB_ANDROID_BEGIN
# _COCOS_LIB_ANDROID_END

include $(BUILD_SHARED_LIBRARY)

$(call import-module,.)

# _COCOS_LIB_IMPORT_ANDROID_BEGIN
# _COCOS_LIB_IMPORT_ANDROID_END

my cmd

据我所知,您使用的是 NDK 12 或更高版本。 这些 NDK 默认添加 arm64-v8a 架构支持。 cocos2d/external/freetype2/prebuilt/android/arm64-v8a/ 文件夹中没有 libfreetype.a 文件,因为 cocos2d 默认不生成,它会降低编译速度。

解决方案是您可以使用 NDK 11 或更低版本
否则使用最新版本的 cocos2d-x 并启用对所有 arch armeabi armeabi-v7a x86 arm64-v8a 的 ABI 支持而不是 armeabi only

一些有关topic/issue

https://github.com/cocos2d/cocos2d-x/issues/15713
https://github.com/cocos2d/cocos2d-x/issues/15566