cocos2d-x 3.6运行cocos run出现Ndk build failed解决办法
发布时间:2020-12-14 16:25:33 所属栏目:百科 来源:网络整理
导读:我运行cocosrun -p android编译成安卓APK的时候提示:jni/../../Classes/AppDelegate.cpp:67:error:undefinedreferenceto'GameMain::c reateScene()', 最后出现错误提示:Ndk build failed!,其中GameMain是我自己写的代码,。 后来找到了原因,有两种解决办
我运行cocosrun -p android编译成安卓APK的时候提示:jni/../../Classes/AppDelegate.cpp:67:error:undefinedreferenceto'GameMain::c
reateScene()', 最后出现错误提示:Ndk build failed!,其中GameMain是我自己写的代码,。 后来找到了原因,有两种解决办法: 第一种方法:在proj.androidjni下面的Android.mk的文件里面,在LOCAL_SRC_FILES下面添加自己编写的所有代码的CPP文件名称。 第二种方法:第一种方法的缺点就是,如果项目有很多文件,手工添加很麻烦,可以参考下文的方法,用代码的方式遍历Classes目录下的 CPP文件,使用这个方法需要注意的是:Classes文件夹里面的所有cpp都是项目中有用到的,主要代码如下:
# 遍历目录及子目录的函数 define walk $(wildcard $(1)) $(foreach e,$(wildcard $(1)/*),$(call walk,$(e))) endef # 遍历Classes目录 ALLFILES = $(call walk,$(LOCAL_PATH)/../../Classes) FILE_LIST := hellocpp/main.cpp # 从所有文件中提取出所有.cpp文件 FILE_LIST += $(filter %.cpp,$(ALLFILES)) LOCAL_SRC_FILES := $(FILE_LIST:$(LOCAL_PATH)/%=%) 参考文章如下: http://tianyiyan.com/cocos2d-x-3-x-%E7%BC%96%E8%AF%91android%E6%96%B9%E6%B3%95/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |