web-dev-qa-db-ja.com

Xcode 10.2、Swift 5、リリーススキームでプログラムをビルド中にコマンドcompileSwiftが失敗しました

Xcode 10.2を使用していますSwift 5。

デバッグスキームでは問題は発生しませんが、リリーススキームでビルドまたはアーカイブすると、コマンドcompileSwiftがゼロ以外の終了コードで失敗したことが示されます。

DerivedData/Clean/pod deintegrate&pod install&pod updateを削除してみました。これらの作品のどれも。

enter image description hereenter image description here

18
Ran Bi

私のプロジェクトでは、問題はポッドCacheに関連しており、ReleaseOptimization LevelOptimize for Speed [-O]に設定されているとエラーが発生しました。 Compilation ModeWhole 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-47774956

7
Olcay Ertaş

Pods Projectを構築設定に移動し、次にCompilation ModeIncrementalReleaseに設定して、この問題を修正しました。次に、クリーンでアーカイブし、正常にコンパイルする必要があります。

6
Neil Faulkner

プロジェクトを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
1
Dimillian

「Swift Compiler-Code Generation」の「Optimization Level」を「Release」-「Optimize for Speed」から「No Optimization [-Onone]」に設定して、キャッシュパスアーカイブを作成する必要がありました。

SwiftyBeaverと同じ

Xcode 10.2に関連する問題のようです。また、トゥーカンやXCGLoggerなど、他のポッドプロジェクトも最適化で問題ないようです。

1
An Chin

Xcode 10.2にアップグレードした後、同じ問題が発生しました。以下の手順を実行した後、私にとってはうまくいきました:

  1. ポッドを更新する
  2. プロジェクトフォルダーのクリーンアップ
  3. ポッドプロジェクトのSwift Language Versionnspecifiedに変更し、(@ Neil Faulknerの提案に従って)コンパイルモードIncrementalに変更します
1
cgontijo

この手順に従うことができます...

  1. Swiftバージョンを現在のバージョンに変更してください。
  2. すべてのポッドを更新します。
  3. Xcodeのすべての派生データを消去します。
  4. Macを再起動します。

Pods..soが原因でこれらすべてのエラーが発生しています。そのため、使用しているすべてのpodを更新する必要があります。

0
Ashish