2013-12-16 3 views
2

Я пытаюсь создать статическую библиотеку для таргетинга armv7.Как правильно построить статическую библиотеку armv7 с помощью xcodebuild

Я использую следующую команду в Баш скрипт:

$XCODEBUILD -project 'MyLibrary.xcodeproj' -target "MyLibrary" -configuration 'Release' -sdk 'iphoneos7.0' clean build ARCHS='armv7 armv7s' IPHONEOS_DEPLOYMENT_TARGET='5.0' TARGET_BUILD_DIR='./build-arm' BUILT_PRODUCTS_DIR='./build-arm' 

Я не могу ссылаться на результаты Lib. Я получаю ошибку компоновщика:

file was built for archive which is not the architecture being linked (armv7s): ~/MyProject/MyProject/libMyLibrary.a

Что-то не так с тем, как я строю двоичный файл?

Любая помощь будет оценена по достоинству.

Update Мишень, что я пытаюсь построить (приложение линкующего ОМТ) имеет следующие параметры:

enter image description here

+0

Перейдите к настройке проекта и установите Build Active Architecture Только вариант №. Это может решить проблему. –

ответ

3

Проверить Построить Настройки (для цели, которую вы пытаетесь построить!) - убедитесь, что оба Architectures и Valid Architectures устанавливаются одинаковые значения.

+0

Спасибо за предложение. Архитектура была установлена ​​на Standard (включая 64) armv7, armv7s, arm64. Я попробовал установить это и Valid архитектуры, чтобы включить только armv7 и armv7s, но проблема не устранена. – Nick

+0

Вы хотите, чтобы они были одинаковыми, а не разными. Вы пытались также установить «Действительные архитектуры», чтобы включить arm64? В качестве альтернативы вы попытались установить оба параметра, чтобы не включать arm64? –

+0

Я обновил снимки экрана, показывающие мои настройки. Это то, что вы предлагаете правильно? – Nick

1

Попробуйте установить ONLY_ACTIVE_ARCHS = NO в вашей команде.

См this post, а также

+0

Это, похоже, не имеет значения. – Nick

Смежные вопросы