У нас есть проект, в котором используется множество библиотек AWS. При первой попытке собрать его с помощью carthage он загрузил двоичные файлы, но не построил его вообще. Итак, мы запустили carthage --no-use-binaries и собрали библиотеки.
Затем возникает такая ошибка:
LoginService.swift:9:8: Module 'AWSMobileClient' was created for incompatible target arm64-apple-ios9.0: ..Carthage/Build/iOS/AWSMobileClient.framework/Modules/AWSMobileClient.swiftmodule/arm64.swiftmodule
На основе этого потока переполнения стека , мы добавляем arm64
к исключенным архитектурам для симулятора.
Это заставляет компилировать весь код aws (ура), но затем эта ошибка возникает при попытке использовать фреймворк, который поступает через диспетчер пакетов Swift:
[].swift:10:8: Could not find module 'Parma' for target 'x86_64-apple-ios-simulator'; found: arm64, arm64-apple-ios-simulator
Таким образом, он хочет версию этой библиотеки x86 и не может ее найти.
Приложение теперь работает на телефоне. Но не на симуляторе, конечно. Не уверены, есть ли способ выяснить, какие архитектуры построены с помощью SPM? или контролировать это. Я сбросил кеш SPM после исключения арки arm64.
$(VALID_ARCHS)
? - person Pranav Kasetti   schedule 08.01.2021$ONLY_ACTIVE_ARCH
setting выглядит так, как будто это может помочь? - person Pranav Kasetti   schedule 08.01.2021