web-dev-qa-db-ja.com

ld:ポッドのインストール後にフレームワークが見つかりません

Firebaseライブラリをプロジェクトに追加したところ、このエラーが発生しました。コンパイルすると、Xcodeはいくつかのディレクトリを見つけることができません。ただし、それらはポッドディレクトリにあります。

ここにエラーログがあります:

ld: warning: directory not found for option '-F/Users/Erumaru/Library/Developer/Xcode/DerivedData/ToDoTogether-gkzytezmbbgkikgoxjpptxgrixil/Build/Products/Debug-iphonesimulator/GTMSessionFetcher'
ld: warning: directory not found for option '-F/Users/Erumaru/Library/Developer/Xcode/DerivedData/ToDoTogether-gkzytezmbbgkikgoxjpptxgrixil/Build/Products/Debug-iphonesimulator/GoogleToolboxForMac'
ld: framework not found GTMSessionFetcher
clang: error: linker command failed with exit code 1 (use -v to see invocation)

これが私のPodfileです:

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'ToDoTogether' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!
  platform :ios, '10.0'
    pod 'Firebase'
    pod 'Firebase/AdMob'  
    pod 'Firebase/Auth'
    pod 'Firebase/Crash'
    pod 'Firebase/Database'
    pod 'Firebase/Analytics'
    pod 'Firebase/Messaging'
    pod 'Firebase/RemoteConfig'
    pod 'Firebase/Storage'

  # Pods for ToDoTogether

end
15
Erumaru

プロジェクトファイルではなく、ワークスペースファイルを開いていることを確認してください。同じエラーが発生し、ワークスペースではなくプロジェクトを使用していることに気付きました。

44
genghiskhan

私は同じ問題に直面していて、複数のことを試みましたが、それでも機能しませんでした。以下に試してみました。

  1. XCworkspaceファイルの使用
  2. プロジェクトをクリーンアップし、XCode、Macを再起動しました
  3. ビットコードをいいえに変更
  4. フレームワーク、ライブラリの検索パスを削除しました

最後に機能したのは、ポッドファイルの削除とポッドファイルの再作成です。それは魔法のように働きました!

追伸:これは非常に一般的なエラーであるため、同じ解決策が機能しない可能性があります。

3

私にとっては、スキーマを変更/編集して、新しいスキーマを選択する必要がありました。

私はdebugスキーマの名前をdebug(development)に変更したため、問題が発生していました。

修正:

  1. Product > Edit Schema > Change Build Configuration

Edit Schema

私がやったことは、代替Configurationsを作成し、現在のものに名前を変更することでした。

enter image description here

2
Roger Perez

プロジェクトターゲット>ビルド設定に移動します。

検索パスを探す> フレームワーク検索パス、警告されたすべてのパスを削除します。次にライブラリ検索パスで、警告されたすべてのパスを削除します。

1
Mayank Modi

私の場合、スキームの編集> 実行に移動し、「なし」を実行可能ファイルとして再選択する必要がありました。

0
Lasse Henrich