近期把项目移植到cocos2d-x 3.0,在整Android编译环境的时候,出现一大堆的编译出错,都是类似“error: expected ';' at end of member declaration”之类的,看了一些编译错误,都是cocos2d-x库里面的代码出错。
经过分析,怀疑可能是编译环境的问题,由于cocos2d-x使用了非常多C++11的新特性,这有可能导致老的编译器出错,看了一下NDK以下的文件以及toolchains里面的内容,windows编译器默认使用4.6,我尝试把4.6改成4.8再次编译不报错了,成功了,把改动的地方分享给大家一下。
在项目->属性以下,改动成下图的样子就可以。
即把builder setting改成ndk-build NDK_TOOLCHAIN_VERSION=4.8