Скорее всего, используемая вами библиотека не была построена для рук.Чтобы библиотека работала в симуляторе, она должна быть скомпилирована для архитектуры i386.Для работы на устройстве оно должно быть скомпилировано для архитектуры armv.
Чтобы работать с обоими, вам нужен так называемый «толстый» двоичный файл, содержащий версии, скомпилированные для каждого из вышеперечисленных.Если у вас его нет, вы получите ошибки компоновщика.
Чтобы узнать, для каких архитектур скомпилирована библиотека, используйте следующую команду:
lipo -info mylibrary