Только что обновился до Xcode 5.1, появляется следующая ошибка:

игнорирование файла ... Dependencies / SalesforceNetworkSDK / libSalesforceNetworkSDK.a, в файле отсутствует требуемая архитектура arm64 ... Dependencies / SalesforceNetworkSDK / libSalesforceNetworkSDK.a (3 фрагмента)

Если я отключу сборку только активных арок и удалю arm64 из допустимых арок, я получу:

Build / Products / Debug-iphoneos / libPods.a, файл был создан для архива, который не связан с архитектурой (armv7)

24
Bradley Thomas 11 Мар 2014 в 21:17
1
Я обнаружил, что по какой-то причине мои настройки сборки Pods были сброшены на i386 по умолчанию для OSX, переопределив их с помощью armv7, и armv7s заставили его собрать, ?!
 – 
Bradley Thomas
11 Мар 2014 в 21:26
1
Это может быть актуально: cameronspickert.com /2014/01/20/…
 – 
matt
12 Мар 2014 в 06:18
@matt, да, спасибо, это выглядит полезным и актуальным. Я заметил, что он также обновлен для xcode 5.1.
 – 
Bradley Thomas
12 Мар 2014 в 08:33
1
Да, Xcode 5.1 настаивает на 64-разрядности для устройств, которые его поддерживают, и это имеет много неожиданных последствий для людей. - Если вы решили свою проблему, не стесняйтесь ответить на свой вопрос; это вполне приемлемо и может помочь другим.
 – 
matt
12 Мар 2014 в 08:35
Проверьте мой ответ здесь: stackoverflow .com/questions/22323039/…
 – 
jsherk
22 Мар 2014 в 21:03

4 ответа

Лучший ответ

Согласно примечания к выпуску компании Apple, см. следующее примечание.

Примечание.

Помните о следующих проблемах архитектуры при открытии существующих проектов в Xcode 5.1:

  • При построении для всех архитектур удалите все явные настройки архитектур и используйте настройку стандартных архитектур по умолчанию. Для проектов, которые ранее были выбраны с использованием «Стандартных архитектур, включая 64-битные», вернитесь к настройке «Стандартные архитектуры».
  • При первом открытии существующего проекта Xcode 5.1 может отображать предупреждение об использовании настройки архитектуры Xcode 5.0. Выбор предупреждения обеспечивает рабочий процесс для изменения настройки.
  • Для проектов, не поддерживающих 64-разрядную версию, необходимо специально настроить параметр сборки архитектуры, чтобы не включать 64-разрядную версию.

Итак, вы должны установить архитектуру, как показано ниже, для поддержки архитектуры библиотек.

enter image description here

Ссылка из этого сообщения.

Обновление. Начиная с 15 мая , вы должны взять сборку из 5.1.1, см. этот пост.

42
Community 23 Май 2017 в 15:16
Спасибо за этот подробный ответ. Это помогло мне решить мою проблему. Кроме того, для всех, кто использует Cordova, убедитесь, что вы делаете это в своем приложении, а не в зависимости CordovaLib.xcodeproj. В итоге я сделал это на обоих, и это решило мою проблему.
 – 
JimTheDev
29 Авг 2014 в 21:41
Прежде чем что-либо делать, сначала попробуйте эту команду. у меня были проблемы со связью
 – 
Waleed Arshad
9 Май 2018 в 17:07

Не знаю предыдущую версию iOS, но установка для сборки активной архитектуры только значения YES в iOS 8 сработала.

enter image description here

8
Vaibhav Saran 16 Ноя 2014 в 05:35

В итоге я получил свой проект для сборки, (1) отключив только активные арки сборки (2) удалив arm64 из допустимых арок и (3) убедившись, что проект Pods строился только для armv7 и armv7s.

Также стоит отметить, что на момент написания этого редактирования мобильный SDK Salesforce был недоступен для arm64.

5
Bradley Thomas 28 Апр 2014 в 21:05

Я просто изменил отладку с Да на Нет,

Build Settings -> Architectures -> Build Active Architecture Only -> Debug -> NO.

Это исправило мою ошибку. введите описание изображения здесь

2
arunit21 3 Июн 2014 в 10:58
Это могло бы работать, но время сборки заняло бы намного больше времени, есть причина, по которой при отладке для него установлено значение YES, чтобы сэкономить время на время сборки.
 – 
OhadM
3 Дек 2015 в 12:38