Я пытаюсь привязать собственную библиотеку c (не объект c) к Xamarin.iOS.
Мой проект, состоящий из файлов .c и .h, отлично работает в XCode. Фактические .h и .m проекта не содержат никаких функций, мне нужно использовать только c-определенные процедуры.
Файл h, содержащий определение необходимого метода, выглядит так:
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <string.h>
int sprec_flac_encode(const char *wavfile, const char *flacfile);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* !__SPREC_FLAC_ENCODER_H__ */
Я встроил его в толстый двоичный файл, но спецификация в документации Xamarin неясна. Учитывая, что я привязываю собственную библиотеку, мне нужен проект привязки в моем решении. В любом случае мне нужен вызов оболочки, чтобы поместить в нее определения DLLImport? Где документируется этот процесс? Мне нужен учебник для моей конкретной ситуации.
P.S. Objective Sharpie генерирует пустой класс привязки, если я «скармливаю» ему свой файл .h, вероятно, потому что он не является objective-c.