После обновления Xcode до версии 14 после компиляции возникает ошибка:
«xxx» не содержит битового кода. Вам необходимо пересобрать его с включенным биткодом (параметр Xcode ENABLE_BITCODE), получить обновленную библиотеку от поставщика или отключить биткод для этой цели. файл «xxx» для архитектуры Arm64
Это связано с отказом от биткода в Xcode14, iOS 9, iOS 10 и минимальной поддержкой iOS 11 , а также больше не поддерживает сборку проектов iOS с архитектурами Armv7, Armv7s и i386. Предыдущий Xcode по умолчанию использовал архитектуры Armv7 и Arm64. .
Преимущество удаления Armv7 заключается в том, что оно может уменьшить размер пакета ipa.
Перейдите сразу к решению: сначала рекомендуется использовать метод 2.
метод первый:
Сначала отключите ENABLE_BITCODE в исходном проекте и установите для него значение Нет. цель --> Встроенная настройка --> Поиск ENABLE_BITCODE ---> Установите значение "Да" на "Нет"
Поскольку Xcode14 больше не поддерживает версии ниже iOS11, вам необходимо установить для IPHONEOS_DEPLOYMENT_TARGET в build_settings значение 11.0.
Рекомендуемая схема использования задается в подфайле следующим образом:
post_install сделать |установщик|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'
конец
конец
конец
Наконец переустановите Pod
Обратите внимание, что для настроек сборки в Target -> iOS Deployment Target также должно быть установлено значение iOS11.0.
Кроме того, сообщается об ошибках при подписании цели Bundle в проекте Pod. Просто выберите команду в подписи цели Bundle и согласуйте ее с основным проектом или используйте ее в подфайле.
config.build_settings["DEVELOPMENT_TEAM"] = "Идентификатор вашей команды"
Сделайте настройки.
Способ второй:
Если приведенное выше решение по-прежнему сообщает об этой ошибке, используйте следующее решение:
Не нужно ничего менять ( нет необходимости ограничивать iOS11 или более позднюю версию ), просто убедитесь, что подпись согласована.
Настройте его в подфайле следующим образом:
post_install сделать |установщик|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '10.0'
config.build_settings['ENABLE_BITCODE'] = 'НЕТ'
config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
config.build_settings['CODE_SIGNING_REQUIRED'] = "НЕТ"
config.build_settings['CODE_SIGNING_ALLOWED'] = "НЕТ"
конец
конец
конец