Моя программа должна читать изображения в формате jpeg из файла native. Для этого я скачал официальный исходный код jpeglib c, который безупречно работает в версии этой программы для Windows, которая запрограммирована с использованием Embarcadero RAD Studio 8.
Но когда я пытаюсь использовать один и тот же исходный код в Android Studio JNI, я вижу множество ошибок почти в каждом файле c-source :( Ниже приведен скриншот:

Как видите, на обоих
есть ошибки
- Расширения Макро (ERREXIT, подчеркнуты красным), которые жалуются на то, что «класс« бла »не имеет поля« бла ».
Методы-члены (красный текст в коде), которые также жалуются на то, что «класс« бла-бла »не имеет поля« бла-бла »».
Похоже, что есть много классов и полей на языке C, или, вероятно, все, которые не работают. Но источник jpeglib определенно содержит их все, что-то просто не работает в Android Studio! Возможно, C-компилятор Android Studio каким-то образом ограничен, но должен быть какой-то способ его обойти ...
Эта проблема не существует в исходных файлах C ++. У меня есть разные исходные папки для исходных файлов java и C ++ (и есть также отдельная папка jni, но я не использую ее, вероятно, я должен), но исходные файлы C находятся внутри папки C ++. Я добавил все исходные файлы c, cpp, h и hpp в круглые скобки директивы add_library () CMakeLists.txt, но это все. Я не знаю, достаточно ли этого ...
Я рад получить любые предложения, как это исправить.