CocoapodsでRestKitをインストールした後、私は奇妙な問題に遭遇しました。私のプロジェクトのRestKit依存関係をcocoapodsで解決してそれを構築しようとした後、私はこのエラーに直面します。
サンドボックスはPodfile.lockと同期していません。 'pod install'を実行するか、あなたのCocoaPodsインストールを更新してください。
pod install
を実行してみましたが、変更はありません。
ここにいくつかのショットがあります:
PODS:
- AFNetworking (1.3.3)
- RestKit (0.20.3):
- RestKit/Core
- RestKit/Core (0.20.3):
- RestKit/CoreData
- RestKit/Network
- RestKit/ObjectMapping
- RestKit/CoreData (0.20.3)
- RestKit/Network (0.20.3):
- AFNetworking (~> 1.3.0)
- RestKit/ObjectMapping
- RestKit/Support
- SOCKit
- RestKit/ObjectMapping (0.20.3)
- RestKit/Search (0.20.3):
- RestKit/CoreData
- RestKit/Support (0.20.3):
- TransitionKit (= 1.1.1)
- RestKit/Testing (0.20.3)
- SOCKit (1.1)
- TransitionKit (1.1.1)
DEPENDENCIES:
- RestKit (~> 0.20.0)
- RestKit/Search (~> 0.20.0)
- RestKit/Testing (~> 0.20.0)
SPEC CHECKSUMS:
AFNetworking: 61fdd49e2ffe6380378df37b3b6e70630bb9dd66
RestKit: 1f181c180105a92f11ec4f6cd7de37625e516d83
SOCKit: 2f3bc4d07910de12dcc202815e07db68a3802581
TransitionKit: d0e3344aac92991395d4c2e72d9c5a8ceeb12910
COCOAPODS: 0.29.0
私はCocoaPodsを更新することでそれを修正することができました。
pod install
を使ってCocoaPodを更新する何度も試した結果、この問題を解決することができました。変数$ {PODS_ROOT}が設定されていないので、以下のトリックを行います。ビルドフェーズ - > Pods Manifest.lockを確認して置き換えます。
diff "${PODS_ROOT}/../Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null
に
diff "${SRCROOT}/Podfile.lock" "${SRCROOT}/Pods/Manifest.lock" > /dev/null
それはわたしを助ける。
PodfileのターゲットからすべてのPodを削除すると、.
target 'myTarget' do
pod 'great-stuff', '~> 4.0' // you deleted this last pod
end
xcodeターゲットからこれらのビルド手順を手動で削除する必要がありますビルドフェーズ:
pod install
を実行すると、Cocoapods(現在の安定版0.37.2)はこのクリーンアップを実行しません。
プロジェクトからポッドを削除して再インストールすることは私にとってうまくいった。
プロジェクトからpodを完全に削除できるNice GitHubリポジトリ があります。
PodFileのバックアップを取って、以下のコマンドを実行するだけです。
きれいにして走ってください。
ターゲット名を変更した後
私の問題は古いターゲット名のxcconfigでした。
それは新しいものに更新されます。
.hファイルが足りない場合もその理由です(podsヘッダーの検索パスはこれらのxcconfigにあります)。
私は何時間も検索していましたが、次のような解決策を見つけました。
私の場合は、方法1が機能します。
方法1:
ターミナルを開き、プロジェクトに直接移動し、実行します。
pod install
プロジェクトを整理して構築する
方法2:
ターミナルを開き、プロジェクトに直接移動し、実行します。
pod deintegrate --verbose
pod install --verbose
方法3:
2つのユーザー定義設定を追加します。[左へ=右へ]
PODS_ROOT = ${SRCROOT}/Pods
そして
PODS_PODFILE_DIR_PATH = ${SRCROOT}/
私の場合、WatchKitアプリを統合した後に同じエラーが発生しました。問題を解決するために、PodfileにWatchKitの両方のターゲットを追加する必要がありました。
target 'MyProject WatchKit App' do
platform :watchos, '2.0'
shared_pods
end
target 'MyProject WatchKit App Extension' do
platform :watchos, '2.0'
shared_pods
end
シモンズ:MyProject WatchKit App
ターゲット用のポッドを誤って最初にインストールしたために、これが発生したのかもしれません。
次のようなエラーが発生した場合
diff:/../Podfile.lock:そのようなファイルまたはディレクトリはありませんdiff:/Manifest.lock:そのようなファイルまたはディレクトリはありませんエラー:サンドボックスはPodfile.lockと同期していません。 'pod install'を実行するか、あなたのCocoaPodsインストールを更新してください。
それからあなたのプロジェクトのCocoapodsに問題があります。時々カカオポッドが同期しなくなることがあり、あなたはカカオポッドを再起動する必要があります。あなたはこのエラーを解決することができるはずです:
私にとって問題なのは、既存のものを複製して自分のアプリに新しいターゲットを作成したが、そのターゲットをPodfile
に追加するのを忘れていたことです。何らかの理由で、クローンを作成したターゲットは問題なく数日間動作しましたが、しばらくするとこのエラーでビルドに失敗しました。 Podfileでクローンプロジェクトのターゲット用に新しいターゲットエントリを作成してからpod install
を実行しなければなりませんでした。
Xcconfigファイルの設定ミスでこの問題が発生しました。
Podsで生成されたxcconfigが、私が使用していたcustomize xcconfigに正しく#includeされていませんでした。これにより、$ PODS_ROOTが設定されず、結果としてdiff "/../Podfile.lock" "/Manifest.lock"
が失敗しました。これは、Podsが同期の問題として誤って解釈したためです。
私の解決策が見つかりました:実行:pod update
の代わりにpod install
。エラーが修正されました!
Githubからプロジェクトをダウンロードするか、他の場所からコピーすると、依存関係ライブラリが存在しなくなり、この問題が発生します。
ターミナルでcd
をproject/project_name directory
に変更するだけです。ls
を使用してPodfile
ファイルがあるかどうかを確認します。
Podfile
が存在する場合は、依存関係をインストールするだけです。
pod install
私の問題はココアポッドのバージョンだったので、私は最新版をインストールしました:Sudo gem install cocoapods --pre
その後pod update
それは私のために働いた
私にとってうまくいったステップ(XCode 8.3.3/XCode 9 beta with a Swift 3.1 project
)
- Navigate to your project directory
- pod install //which then asks you to do the next step
- pod repo update //takes a while to update the repo
- pod update
- pod install
- Close Xcode session
- Open and Clean the project
- Build/Run
また、make sure you open the .xcworkspace file rather than the project file (.xcodeproj) when working with pods
です。 「Apple Mach -O Linker command failed」などのリンクに関するエラーを解決するはずです。
あなたが道に適用しているならプロジェクトクリーンアップそしてあなたのプロジェクトはまだエラーです。
タブビルドフェーズに移動してからCheck Pods Manifest.lock
を見つけてスクリプトを削除します。
それからそのようなフォルダPods
を削除するコマンドを入力してくださいrm -rf Pods
そして、あなたはコマンドrm Podfile.lock
でPodfile.lockを削除する必要があります
おそらく、状況に基づいてあなたはファイルyour_project_name.xcworkspace
を削除することができます
最後に、Pod pod install --repo-update
をインストールするためのコマンドが必要です。
うまくいけば、この解決策はあなたを思い付く。ハッピーコーディング:)
私にとっては、フラッターで作業していて、既存の設定のために設定が自動的に追加されませんでした。
#include "Pods/Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"
とFlutter/Release.xcconfig
にFlutter/Debug.xcconfig
を追加する
問題を解決しました。
プロジェクトをきれいにしてXcodeでもう一度ビルドしてください。再度ポッドインストールする必要はありません。
するとき
pod install --verbose
確認してください:
1 - あなたは正しいディレクトリにいます。ほとんどの場合、githubプロジェクトがダウンロードされると、マスターフォルダがあります。 pod install --verboseを起動する前に、端末の実際のプロジェクト名フォルダ(masterfolder/projectフォルダ)内にいる必要があります。
2 - 古いポッドロックフォルダを削除してから、xcode cleanを使用してプロジェクトを消去し、podをインストールします。
3-あなたのrvmを最新に保ちなさい。
次の手順に従ってください。
1:プロジェクトフォルダ内のPodfile.lockファイルを削除する
2:プロジェクトフォルダ内のPodsフォルダを削除する
3:プロジェクトフォルダで 'pod install'を実行してください。
4:Xcodeで「クリーン」をする
5:プロジェクトを再構築する
誤ってpodをインストールしようとした場所からフォルダを削除して解凍しました。
1)プロジェクトフォルダに移動します2)プロジェクトフォルダを解凍します3)プロジェクトフォルダを削除します4)フォルダを解凍します5)今からこのフォルダを持っていてもからこのフォルダにもう一度行く必要がありますターミナル
最新のComponentKit 0.14でも同じ問題があります。その理由は、PODS_ROOTが設定されておらず、ComponentKit.xcconfigに行を追加することで解決策が見つかることです。
#include "../Pods/Target Support Files/Pods-ComponentKit/Pods-ComponentKit.debug.xcconfig"
私はバンドルからココアポッドのインストールを使用します。
bundle install
bundle exec pod install
を使うあなたがこれらのステップのうちの1つのハウツーを知らないならば、グーグルで検索することは役に立ちます:)
私の実用的な答えは:
pod deintegrate <PROJECT>.XCODEPROJ // will deintegrate cocoapods
pod install // installs the pods
これは私の一日をした!
PodがGitにプッシュされていない可能性があることをプロジェクトで確認してください。そのため、Podsディレクトリが見つからないため、コンパイルが失敗することは明らかです。
diff "${PODS_ROOT}/../../Podfile.lock" "${PODS_ROOT}/Manifest.lock" > /dev/null
私は自分のプロジェクトのディレクトリに移動した後にターミナルでpod install
を発行することによってこれを解決しました。
確かに、cocoapods
がインストールされていないことを意味するエラーcannot find pod command
がありました。これはgem install cocoapods
によって修正されています。依存関係のエラーが発生した場合は、足りないと報告されている各コマンドをインストールしてください。私の場合、私はRubyを更新しなければならず、その後cocoapods
は正しくインストールされ、pod install
コマンドを使用することができました。
PS。 Podsディレクトリがある場合はpod update
を試してください。ライブラリを更新する必要があるかもしれません。
あなたのポッドが空の場合
私はエラーがありました:
diff:/../Podfile.lock:そのようなファイルまたはディレクトリはありませんdiff:/Manifest.lock:そのようなファイルまたはディレクトリはありませんエラー:サンドボックスはPodfile.lockと同期していません。
私は初めてbitbucketからリクエストを引きました。私は自分のプロジェクトをきれいにして、すべて(ポッドのインストール、ポッドの更新など)を試しましたが、上の答えのどれも私のために働きませんでした。それから私はちょうど私がポッドをインストールしていたパスをチェックしてそれを修正して再度インストールしました、それはちょうどうまくいきました。必ず.xcodeprojまたは.xcworkspaceが存在する場合はその直前にパスを指定してください。誰かがこれから恩恵を受ける可能性があります。
私は同じエラーがありました。最初に私はを使ってcocoapodsを更新します
Sudo gem install cocoapods
それからPod installコマンドを使ってpodをインストールしてください。
これを実行すると、エラーが消えます
rm -rf Pods && gem install cocoapods && pod install
コードがgitリポジトリにある場合、単純なリセットとクリーンでビルドを保存できます。
リポジトリに保留中の変更がないことを確認してください before:
git reset --hard
git clean -fxd
Npm -v 6.4.1ノード-v v10.2.1 pod --version 1.5.3から最新にすべてを更新したのと同じ問題がありました。
npm -v 6.5.0ノード-v v11.8.0 pod --version 1.6.0
そしてそれを修正する
私は以前にインストールされたライブラリを削除しようとしていたときに私はこの問題を抱えていた
@ Michalの答えが私を助けてくれました
私の問題は、私の仲間の開発者がプロジェクトにポッドを追加してから、githubを使用してプロジェクトを引っ張ったときにエラーが発生したことでした。私はポッドインストールを実行し、それは私の仲間の開発者によって追加された新しいライブラリでポッドを更新しました。それが役に立てば幸い。