Ответ 1
Я исправил эту проблему, перейдя в Pods Project, затем в настройки здания и установив режим компиляции в Incremental for Release. Затем очистите и заархивируйте, затем должны скомпилироваться.
Я использую Xcode 10.2, Swift 5.
При использовании схемы отладки никаких проблем не возникает, но при использовании схемы выпуска при сборке или архивировании она показывает, что команда compileSwift завершилась неудачно с ненулевым кодом завершения.
Я попытался удалить DerivedData/Clean/pod deintegrate & pod install & pod update. Ни одна из этих работ.
Я исправил эту проблему, перейдя в Pods Project, затем в настройки здания и установив режим компиляции в Incremental for Release. Затем очистите и заархивируйте, затем должны скомпилироваться.
Для моего проекта проблема была связана с pac Cache
который выдает ошибку, когда для Optimization Level
для Release
установлено значение Optimize for Speed [-O]
. Я снова установил Compilation Mode
на Whole Module
и установил уровень оптимизации для модуля в файле модуля:
post_install do |installer|
installer.pods_project.targets.each do |target|
# Cache pod does not accept optimization level '-O', causing Bus 10 error. Use '-Osize' or '-Onone'
if target.name == 'Cache'
target.build_configurations.each do |config|
level = '-Osize'
config.build_settings['SWIFT_OPTIMIZATION_LEVEL'] = level
puts "Set #{target.name} #{config.name} to Optimization Level #{level}"
end
end
end
end
Ссылка: https://github.com/hyperoslo/Cache/issues/233#issuecomment-477749560
Поэтому у меня возникла та же проблема при обновлении моего проекта до Swift 5. По какой-то причине Cocoapods (последняя версия, 1.6.1) установили SWIFT_VERSION некоторых модулей в Swift 5, даже если они выпущены как модули Swift 4, 4.1, 4.2. Поэтому мне пришлось добавить сценарий после установки, который установит корректирующую версию swift примерно так
post_install do |installer|
installer.pods_project.targets.each do |target|
if target.name == 'CryptoSwift' || target.name == 'SwiftyBeaver'
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '4.2'
end
end
end
end
У меня была такая же проблема после обновления до Xcode 10.2. После выполнения шагов ниже это сработало для меня:
Мне пришлось установить "Уровень оптимизации" в "Компиляторе Swift - Генерация кода" на "Выпуск" - "Без оптимизации [-Onone]" из "Оптимизация по скорости", чтобы Cache передавал архив.
То же самое с SwiftyBeaver
Кажется, проблема связана с Xcode 10.2. Кроме того, другие проекты с пакетом, похоже, подходят для оптимизации, такие как Toucan или XCGLogger.
Вы можете следовать этим шагам...
Вы получаете все эти ошибки только из-за pods.. так что либо вам нужно обновить каждый pod, который вы используете.
Я получал ту же ошибку (без полезных подробностей), и ни одно из исправлений, опубликованных здесь, не помогло мне. Делать это исправление сработало для меня.