我正在尝试使用最新版本的Android studio(2.2.2)创建一个C / C ++库。
如何为不同的代码文件指定不同的编译选项?
我的库中的一些.cpp代码使用STL并且需要“-std = gnu ++ 11”才能成功编译。
我的库中的一些代码使用.c文件,如果指定了“-std = gnu ++ 11”,则会生成此错误:
错误:'C / ObjC'不允许使用无效参数'-std = gnu ++ 11'
我目前正在使用build.gradle脚本进行编译,但我也愿意使用CMake,如果有人可以帮我设置一个CMake脚本来完成同样的事情。
我看到了指定cppFlags而不是cFlags的其他答案,以便仅为.cpp文件指定编译标志。最新版本的Android Studio似乎缺少NDK选项。当我尝试使用它时,我收到此错误:
无法为类型对象获取未知属性'cppFlags' com.android.build.gradle.internal.dsl.NdkOptions。
感谢您的帮助!
答案 0 :(得分:0)
通过从Android Studio生成新的C ++库模块,我能够获得骨架CMake设置。 cppFlags通常来自CMake文件,所以我的问题解决了!