最近Xcodeをバージョン10に更新し、プロジェクトをビルドしようとすると奇妙なエラーを受け取り始めました。現在Swift 4.0を使用していますが、Swiftバージョン4.2にアップグレードしようとしました。しかし、多くのフレームワークでこの同じエラーを受け取りました。
コマンドコンパイルSwiftはゼロ以外の終了コードで失敗しました
これまでに、派生フォルダーを削除しました。以下の端末コマンドを使用して、すべてのポッドを更新し、すべてのポッドを削除して再インストールしました。
Sudo gem install cocoapods-deintegrate cocoapods-clean
pod deintegrate
pod clean
pod install
これは私の問題を解決するために機能しませんでした。ただし、arm64
にBuild Setting -> valid architectures
アーキテクチャを追加し、自動コードを有効にする機能があるものを見つけました。
さらに、フレームワークに関係する他のいくつかのビルドエラーがあります。
SwiftMessages
タイプ「SwiftMessages.Config」の値にメンバー「presentationContext」がありません
WhatsNewKit
呼び出しのパラメーター 'backgroundColor'の引数がありません
これらの各フレームワークの開発者に問題を公開して、これらの問題の支援を求めました。
SwiftMessage GitHubの問題WhatsNewKit GitHubの問題
presentationContext
をクリックすると、SwiftMessages
Framework内の構造体が表示されます。通常、「メンバーがいません」という警告が表示されたら、クリックして元の場所を確認することはできません。
これはココアポッドと関係があると思いますが、まだ解決策を見つけることができていません。この問題を修正するにはどうすればよいですか?誰かが助けていただければ幸いであるが、今はこれにこだわっている。
更新:2つのフレームワークの最新ビルドはSwift 4.2用でした。各フレームワークのバージョンをSwift 4.0でビルドされたものに変更すると、プロジェクトをビルドすることができました。
ポッドSwiftMessagesの場合、アプリがSwift 4.2ではない場合、バージョン5.01ポッド「SwiftMessages」、「〜> 5.0.1」を使用する必要があります
そしてそれは魅力のように機能します
Swiftバージョンを4.2に設定してから、ポッドの統合解除、ポッドのインストール、この問題の修正を行います。ありがとう@alejandro-iván
いくつかのフレームワーク(自社開発)とアプリがありました。どういうわけか、彼らはSwiftバージョンまで同期がとれなくなっていました。すべてのフレームワークが同じバージョンであることを確認してください。私の場合、それらはすべてSwift 4.2に設定する必要がありました。 4.2への移行をまだ行っていない場合は、Xcodeがこれに役立つことを忘れないでください:編集->変換->現在のSwift構文。
Xcode 10.2でも同じ問題が発生しました。Xcodeのバグです。そのため、古いXcodeバージョン(9.4)で開いたところ、問題なく動作しました。それから、リリース後にXcode 10.2.1に更新しました->プロジェクトをクリーンおよびビルドし、問題を解決しました。
答えはすべて私に役立ちました。私の場合、フレームワークを手動でインストールするだけですが、この種の問題も発生します。私はすべての答えを試してみましたが、ビルド中にこの問題が発生していました。奇妙なことに、コーディング中に、cmdキーを押しながらクリックして、すべての「不足している」コンポーネントを解決できました。また、派生データをクリーンアップして削除し、Xcodeを再起動しました。
私は最終的に、これらの追加の手順を誘導することで機能しました。
フレームワークプロジェクト/ターゲットのeach(自分のものを含む):
私はこのように解決しました:
。podファイル内の各コメント解除ライブラリについて、手順2-3-4 -5を繰り返します。
あなたの助けになることを願っています。
私は同じ問題を抱えています、私のXcodeバージョンは10.2.1(10E1001)、Cocoapodsバージョンは1.7.0.beta.2です。
Cocoapods 1.6.1に戻り、問題は解決しました。具体的な手順は次のとおりです。
pod deintegrate
統合をキャンセルします。すべてのCocoapodをアンインストールします。
for i in $( gem list --local --no-version | grep cocoapods );
do
gem uninstall $i;
done
Cocoapodsの安定バージョンをインストールします。現時点では1.6.1です。
gem install cocoapods
プロジェクトをクリーンにし、DerivedDataを空にします
pod install
Xcode 10.2およびSwift 5.にアップグレードするときに、この問題に出くわしました。すべてを試した後、リリースノートでこれを見つけました。
Swiftコンパイラーは、スレッドサニタイザーが有効になっていると、ビルド中にクラッシュする場合があります。 (48719789)
確かに、スレッドサニタイザーをオフにすると、プロジェクトをエラーなしで再度コンパイルできます。
このエラーが発生し、スレッドサニタイザーが有効になっている場合は、オフにしてください!
私の場合、それはコードエラーでした:
self.myDto.map{ (dto)} in
var stringValue = (dto.value(forKey: "name") as! String)
stringValue.append("c")
return stringValue
}
stringValue
変数を削除するだけで問題が修正されました。
同じエラーメッセージが表示されただけで、この質問とこの質問の重複した回答のいずれも、私のプロジェクトに当てはまらないか、役に立ちました。私はエラーメッセージを読み続け、1つを変更するつもりで同じ名前の異なるフォルダにある2つの別々のSwiftファイルに愚かな名前を付けていたことに気付きましたが、1つを変更する前に、私は試しました私のプロジェクトを実行し、最後の1時間悩まされました。
結論として、誤ってファイルに同じ名前を付けて、エラーコードを完全に読み取らないでください。