cocos2d-x 3.0 移植android 常见的问题,cocos2d-x 向android移植问题汇总

今天将cocos2d-x(2.1.3版)项目向android平台移植。因为恢复了下系统,重新配置了下环境变量。

1.先是Cygwin(2.819版)的安装。头疼了一把。大概装了好几次(我是之前有装过,保存了下载文件)。装到最后快结束时,突然报了个error。"Package: libpango1.0_0 pango1.0.sh exit code 1",还以为是少文件的问题。这样反复的试了几次。好痛苦,问题依然在。没办法。google了下,发现有论坛有人提过这个问题。

大概意思是:在执行 /etc/postinstall/pango1.0.sh 时 要往/etc/pango 拷贝 pango.modules文件,却发现没有 pango 这个文件夹。报错。

于是,手动创建这个文件夹。回到安装向导的前一步。重新选了下,next。一路OK(好像是先unstall再install)。

然后配了下

5ec0124b2f70fca25b1869d9d9adb664.png

4a62abba47c8e319e598cd253d881ea2.png

移植时要用到。

2.*** Android NDK: Aborting 。 停止。

...

Android NDK: ERROR:/cygdrive/e/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android/../../cocos2dx/platform/third_party/android/prebuilt/libjpeg/Android.mk:cocos_jpeg_static: LOCAL_SRC_FILES points to a missing file

Android NDK: Check that /cygdrive/e/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android/../../cocos2dx/platform/third_party/android/prebuilt/libjpeg/libs/armeabi/libjpeg.a exists or that its path is correct

make: 进入目录“/cygdrive/e/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android”

/cygdrive/e/android/android-ndk-windows/android-ndk-r9/build/core/prebuilt-library.mk:45: *** Android NDK: Aborting 。 停止。

make: 离开目录“/cygdrive/e/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android”

1fb604da74202e5c3f65aa578ce517b0.png

这个是少文件。不过我从官网下的cocos2d-2.1rc0-x-2.1.3。然后build-win32.bat安装。都很顺利。最后发现时是 cocos2dx\platform\third_party 下少各个平台的第三方库文件。发现 CocosDenshion\third_party 也是少库文件。不知道为什么没解压出来。不过cocos2d-2.1rc0-x-2.1.3的压缩文件中是有这些库文件的。也不管了,解压出来覆盖过去就没有问题了。

3.编译 CCCommon.cpp 文件时报错。

Compile++ thumb : cocos2dx_static <= CCCommon.cpp

E:/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android/../../cocos2dx/platform/android/CCCommon.cpp: In function 'void cocos2d::CCLog(char const*, ...)':

E:/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android/../../cocos2dx/platform/android/CCCommon.cpp:44:72: error: format not a string literal and no format arguments [-Werror=format-security]

E:/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android/../../cocos2dx/platform/android/CCCommon.cpp: In function 'void cocos2d::CCLuaLog(char const*)':

E:/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android/../../cocos2dx/platform/android/CCCommon.cpp:54:77: error: format not a string literal and no format arguments [-Werror=format-security]

cc1plus.exe: some warnings being treated as errors

/cygdrive/e/android/android-ndk-windows/android-ndk-r9/build/core/build-binary.mk:348: recipe for target `obj/local/armeabi/objs/cocos2dx_static/platform/android/CCCommon.o' failed

make: *** [obj/local/armeabi/objs/cocos2dx_static/platform/android/CCCommon.o] Error 1

make: 离开目录“/cygdrive/e/cocos2d-x/code/cocos2d-2.1rc0-x-2.1.3/HelloTest1/proj.android”

google了下 国外论坛有人也出现了这样的问题。

因为我的ndk是r9,有人建议换回r8,我没试。最后发现有人这样解决。

修改你自己项目 proj.android\jni\Application.mk 文件,在最后加上

APP_CPPFLAGS += -Wno-error=format-security 就可以了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值