Как установить разные cFlags для разных файлов в Android Studio NDK Gradle?
Я пытаюсь создать библиотеку C/C++, используя последнюю версию Android studio (2.2.2).
Как я могу указать разные параметры компиляции для разных файлов кода?
Часть кода.cpp в моей библиотеке использует STL и требует "-std=gnu++11" для успешной компиляции.
Часть кода в моей библиотеке использует файлы.c, которые генерируют эту ошибку, если указано "-std=gnu++11":
Ошибка: недопустимый аргумент '-std=gnu++11' не разрешен с 'C/ObjC'
В настоящее время я использую сценарий build.gradle для компиляции, но я также был бы открыт для использования CMake, если кто-то может помочь мне настроить сценарий CMake для выполнения той же задачи.
Я видел другие ответы, которые указали cppFlags, а не cFlags, чтобы указать флаги компиляции только для файлов.cpp. Эта опция NDK отсутствует в последней версии Android Studio. Когда я пытаюсь использовать его, я получаю эту ошибку:
Не удалось получить неизвестное свойство 'cppFlags' для объекта типа com.android.build.gradle.internal.dsl.NdkOptions.
Спасибо за вашу помощь!
1 ответ
Создав новый модуль библиотеки C++ из Android Studio, я смог получить скелетную установку CMake. cppFlags работает нормально из файлов CMake, поэтому моя проблема решена!