Я портировал несколько библиотек C с открытым исходным кодом на iOS (см. Порты iOS ).Я обнаружил, что самый надежный способ портировать библиотеку - это создать новый проект Xcode с целью сборки для статической библиотеки iOS.Важно отметить, что Apple не позволит вашему приложению iOS содержать динамические библиотеки, если вы планируете распространять свое приложение в магазине приложений iTunes, поэтому вы не сможете использовать библиотеки FAT.
Это шагиЯ обычно следую при переносе библиотек на iOS, которая обычно создается с помощью GNU Autotools:
- Запустите ./configure с соответствующими флагами на OS X.
- Убедитесь, что библиотека правильно собирается на ОСX с использованием make.
- Создайте новый проект Xcode с помощью шаблона статической библиотеки iOS.
- Добавьте файл config.h из предыдущего запуска configure в проект Xcode.
- Чтениефайл automake (Makefile.am) и добавьте ссылки на источники в целях automaker в цель Xcode для статической библиотеки.
- Скопируйте флаги CPP (т. е. -DHAVE_CONFIG_H) из файла automake в настройки сборкив XCode.
- Скомпилируйте в XCode и начните запускать ошибки (обычно добавляя отсутствующий заголовок, включая пути или пропуски).ng исходные файлы).
Структура каталогов, которую я обычно использую, выглядит следующим образом:
project/
project/ported-project.xcodeproj
project/project-x.x.x.tar.gz
project/project-x.x.x
project/project -> project-x.x.x
Я знаю, что это не совсем то, что вы просили в своем вопросе, однако этоприблизительное описание шагов, которые я использовал в течение многих лет для переноса библиотек.Преимущество создания реального XCode для компиляции перенесенной библиотеки состоит в том, что она облегчает интеграцию библиотеки в несколько приложений XCode для iOS.
Если вам нужны пояснения или более подробные инструкции, дайте мне знать, и я сообщупопробуйте написать более подробные инструкции и обновить мой ответ.