现在的位置: 首页 > 综合 > 正文

android 添加 c++ 11 支持

2017年11月11日 ⁄ 综合 ⁄ 共 603字 ⁄ 字号 评论关闭


转自:http://blog.sina.com.cn/s/blog_6fe0eb1901018rzy.html


 之前用cygwin编译cocos2d-x写的C++游戏的时候,发现用cygwin编译出现了需要启用-std=c++11 或 -std= gnu++11的编译选项的情况:

cocos2d-x用cygwin编译需要-std=c++11

为了解决这个问题,主要要注意以下几个方面

1. 改Android.mk文件。该文件位于你用create-android-project.bat生成的工程/project.android/jni/Android.mk。将LOCAL_CFLAGS += -std=c++11加入如下图的位置:

cocos2d-x用cygwin编译需要-std=c++11

2.  如果改了文件再用cygwin编译还是不行,那就比较悲催了。不过我当时也是悲催过的人,分享一下我的解决办法吧,这个不一定每个人都适用,可能跟各种版本问题有关。回到正题,检查一下你的cygwin中安装的关于g++的各种组件的版本,尽量更新到最新版,因为-std=c++11这个命令貌似在g++版本4.7或以上才有。打开cygwin命令行窗口,输入 g++ -v 可以查看g++版本,在4.7或以上比较靠谱。

 

3.如果按照1,2做法都没用,可以试着将NDK更新到r8e或以上,因为之前我的NDK是r8d,发现单改文件就不行,更新到r8e之后就行了 -_-||。。

 

4. 如果1,2,3都不行,那真不好意思,本人能力有限,您的烦恼还需您自个儿琢磨了。~~~~~~

抱歉!评论已关闭.