Я пытаюсь создать динамическую структуру для приложения iOS. Благодаря новой версии Xcode (6) мы можем выбрать Cocoa Touch Framework при создании нового проекта, и больше нет необходимости добавлять совокупную цель, запускать скрипт и так далее. У меня нет проблем, когда я строю фреймворк. Но когда я пытаюсь использовать его в приложении iOS, у меня возникают некоторые проблемы с архитектурой.
ld: warning: ignoring file /Library/Frameworks/MyFramework.framework/MyFramework, file was built for x86_64 which is not the architecture being linked (arm64): /Library/Frameworks/MyFramework.framework/MyFramework
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_MyFrameworkWebService", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ld: warning: ignoring file /Library/Frameworks/MyFramework.framework/MyFramework, file was built for x86_64 which is not the architecture being linked (armv7): /Library/Frameworks/MyFramework.framework/MyFramework
Undefined symbols for architecture armv7:
"_OBJC_CLASS_$_MyFrameworkWebService", referenced from:
objc-class-ref in AppDelegate.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Ну, я попытался изменить настройки проекта и цели фреймворка (Архитектуры и построить только действительную архитектуру и действительные архитектуры). Я сделал то же самое для проекта приложения iOS, но ничего не работает. Думаю, я чего-то не понял.
Например, когда я создаю фреймворк только для проверки i386 (iOS Simulator) с помощью командной строки «xcrun lipo -info MyFramework», у меня возникает проблема, которая
ld: предупреждение: игнорируется файл /Library/Frameworks/MyFramework.framework/MyFramework, файл был создан для x86_64, который не является связанной архитектурой (i386)...
Если кто-то может помочь мне получить структуру, которая работает для всех архитектур iOS, включая симуляторы.