【发布时间】:2016-11-29 14:27:53
【问题描述】:
我正在尝试使用最新版本的 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.
感谢您的帮助!
【问题讨论】:
-
请发布您的 build.gradle 文件中与 nkd 相关的部分。
标签: android c++ gradle android-ndk cflags