Проблема с выпуском

Я пытаюсь скомпилировать свой проект с родными c-libs и получить следующую ошибку

/Users/eugene/KREF14001/app/src/main/jni/libC/PulseFilter.c: In function 'shapeMonoGame': /Users/eugene/KREF14001/app/src/main/jni/libC/PulseFilter.c:696:5: error: 'for' loop initial declarations are only allowed in C99 mode /Users/eugene/KREF14001/app/src/main/jni/libC/PulseFilter.c:696:5: note: use option -std=c99 or -std=gnu99 to compile your code 

Из этого отчета я обнаружил, что для компиляции моего кода я должен использовать параметр -std = c99 или -std = gnu99, но я не знаю, как это сделать. Пожалуйста, помогите мне.

В файле build.gradle вашего приложения вы можете добавить cFlags "-std=c99" в блок ndk расположенный в блоке defaultConfig следующим образом:

 ndk { moduleName "libblur" abiFilter "armeabi-v7a" stl "gnustl_static" cFlags "-std=c99" ldLibs "log" } 

Проблема заключалась в том, что Gradle не использует ваши .mk-файлы, но генерирует их и использует их. Поэтому полезно редактировать Android.mk и Application.mk. Вы можете создать исходный код вручную или отредактировать ndk-раздел build.gradle.

Intereting Posts