связывание статических библиотек в iOS5

#ios5

#ios5

Вопрос:

Я новичок в iOS 5. В настоящее время работает с xcode 4.2, базовым sdk iOS 5.0, компилятором Apple LLVM 3.0, архитектурой armv7. Всякий раз, когда я пытаюсь связать статическую библиотеку, появляется следующее предупреждение.

ld: предупреждение: игнорирование файла /Users/shilpasurendran/Desktop/InputVal_aslib/InputVal_aslib/iCodeBlogsMathLibrary/libICodeMathUtils.a , файл был создан для архива, который не является связанной архитектурой (i386)

Я даже пытался изменить цели развертывания и компилятор, но бесполезно. Пожалуйста, помогите. Заранее спасибо!!

Ответ №1:

Вы пытаетесь создать архитектуру armv7, что означает, что вы хотите создать для реального устройства, а не для симулятора.

Библиотека, на которую вы ссылаетесь, выполнена в архитектуре i386, что означает, что она скомпилирована для симулятора.

При использовании сторонней библиотеки часто существует такая структура:

 Library
  build
    Release-iphoneos
    Release-iphonesimulator
    Release-universal
  

Если существует универсальная сборка, вы должны использовать ее. В противном случае попробуйте использовать ту, которая находится в разделе Release-iphoneos.

Надеюсь, это поможет

Комментарии:

1. Thnku так много. Это действительно помогло мне.