Проблема Xcode 12 - не удалось найти модуль FrameworkName для цели arm64-apple-ios-simulator; найдено: x86_64-apple-ios-simulator, x86_64

После обновления до Xcode 12 проект выдает мне эту ошибку при построении симулятора:

Could not find module 'FrameworkName' for target 'arm64-apple-ios-simulator'; found: x86_64-apple-ios-simulator, x86_64

На каркасе установлены коконады. Он работает с Xcode 11. Сборка на любом устройстве iOS или реальном iPhone с Xcode 12 также отлично работает. Чем отличается Xcode 12?


person Stefo    schedule 23.09.2020    source источник


Ответы (4)


Я исправил это, убедившись, что параметр сборки VALID_ARCHS (теперь отображается в нижней части настроек сборки в Xcode 12) содержит x86_64.

То есть:

  • Раньше у меня было: VALID_ARCHS = arm64, arm64e
  • После исправления: VALID_ARCHS = arm64, arm64e, x86_64

(Немного нелогично, поскольку в сообщении об ошибке говорится, что не удалось найти модуль для arm64-apple-ios-simulator,: shrug :)

person Mete    schedule 16.10.2020
comment
Вау, проблема действительно решена! Наконец-то он успешно работает на симуляторе. Спасибо! - person Stefo; 19.10.2020
comment
Это работает, я попытался заменить значение VALID_ARCHS тем, что указано здесь: arm64, arm64e, x86_64 - person Yash Bedi; 14.01.2021
comment
VALID_ARCHS больше нет в Xcode 12.3. - person aheze; 28.01.2021
comment
@aheze да, на самом деле он отсутствовал еще до 12.3. Но вы можете просто добавить его самостоятельно в раздел User-Defined в нижней части настроек сборки. - person Mete; 01.02.2021
comment
Это действительно вводит в заблуждение из-за части arm64, но симулятор iOS фактически работает изначально на x86-64 (на Intel Mac), поэтому решение имеет смысл. Вот почему это симулятор, а не эмулятор. Именно поэтому он невероятно быстрее, чем эмуляторы Android. Apple Silicon Mac также запускает его изначально, но теперь на arm64, в той же архитектуре, что и iPhone и другие продукты Apple. Возможно, ошибка возникла из-за того, что симулятор был переименован для перехода на Apple Silicon. Никакой инсайдерской информации у меня нет, просто спекулирую. - person Velociround; 29.03.2021

Вы можете попробовать установить $(ARCHS_STANDARD) для VALID_ARCHS для отладки для любого SDK симулятора iOS и установить YES для ONLY_ACTIVE_ARCH для отладки. У меня это сработало.

введите описание изображения здесь

person Nikaaner    schedule 27.10.2020

Эта ситуация предположительно возникает, когда вы изменяете свой проект для соответствия новым компьютерам Mac M1, а затем пытаетесь запустить тот же проект на Intel Mac.

Он в основном пытается работать на архитектуре ARM и вместо этого находит X86_64.

Чтобы решить эту проблему, вам просто нужно ограничить операцию сборки только активной (X86_64) архитектурой.

Вы можете сделать это, установив для параметра Build Active Architectures only значение YES.

введите описание изображения здесь

person Rufat Mirza    schedule 18.04.2021

Вы можете попробовать удалить производные данные вашего приложения, а затем очистить и создать приложение, вы можете выполнить шаги по следующей ссылке https://programmingwithswift.com/delete-dehibited-data-xcode/

person Jorge Luis Peña Lopez    schedule 25.09.2020
comment
Я уже пробовал удалить производные данные, очистить сборку, перезапустить Xcode, перезагрузить Mac .. Ничего не помогает - person Stefo; 05.10.2020
comment
ты понял это? - person matt; 08.10.2020
comment
Попробуйте решение Mete. - person Stefo; 19.10.2020