首页 文章

ld:框架未找到Pods

提问于
浏览
162

我正在尝试为我的IOS项目添加一个框架,但是当我构建时,我总是得到相同的消息:

ld:找不到框架Pods clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)

我试图删除我的 Pods 目录,然后运行 pod install 我打开 .xcworkspace 就像它写在pod安装的日志中,我在xcode上清理项目,然后尝试构建,但它将无法正常工作..

我的podfile看起来像这样:

xcodeproj '/Users/guillaume/project/Mobile/iOS/FoodPin/FoodPin.xcodeproj'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
pod 'SwiftHTTP', '~> 0.9.2'

我的xcode版本是 6.3.1

谢谢,

22 回答

  • 3

    我确实遇到过这个问题,因为我没有正确设置 platform .

    所以在我的macOS应用程序中,我将平台设置为:

    platform :ios
    

    代替

    platform :osx
    
  • 0

    这通常是由于打开.xcodeproj文件而不是.xcworkspace引起的 .

    当您第一次运行“pod install”时,它将创建一个.xcworkspace文件,其中包含您原始的.xcodeproj和一个Pods项目 . 您需要关闭.xcodeproj并打开.xcworkspace .

    这是通过Xcode的新项目向导创建项目时的常见问题 - 我经常忘记我不在工作区中,这是让Cocoapods正确链接所必需的 .

  • 0

    我遇到了类似的问题

    framework not found Pods_OneSignalNotificationServiceExtension
    

    通过删除以下内容解决了这个问题 . 转到 target OneSignalNotificationServiceExtension>构建阶段>链接二进制文件并删除 Pods_OneSignalNotificationServiceExtension.framework
    It should be empty here.
    希望这会有所帮助 . 干杯 .

  • 410

    我收到此错误是因为我重命名了我的项目并更改了pod文件中的项目名称,但我的项目是指旧的名称,但不存在导致此错误 . 我摆脱了这个

    pod deintegrate
    

    其次是

    pod install
    
  • 0

    在我的情况下,在比较我知道正确 Build 的分支之间的差异后,我注意到我的Podfile中的这一行:

    platform :ios, '11.0'
    

    我无意中将我的目标版本从10升到11,而我在Xcode中的目标仍然设置为10.回到10解决了我的问题 .

    确保正确设置目标iOS版本 .

  • 3

    这个问题让我发疯,因为它突然发生而没有对项目进行任何更改 . 我已经尝试了这个线程中的所有建议的解决方案(和其他相关的),但没有一个解决了这个问题 .

    唯一不同于我的其他项目(编译得很好),是 this project name was containing an accent (法国口音,"é") . 我已经重命名了项目和所有相关文件,它终于奏效了!

    也许这与更新到Xcode 10有关,因为这个项目之前工作得很好......

    编辑:在项目名称中使用 - 项目时似乎也失败了...

  • 13

    删除pod安装或更新后创建的框架文件夹

  • 44

    我通过删除位于 project navigator 的文件夹_357853中的红色 .framework 文件清除了此错误 . 我认为这也会自动删除 General 设置的 Linked Frameworks and Libraries 部分中的相应红色条目 .

    我一直在清理/重新安装pods以解决另一个问题 . 也许这些红色框架文件和条目只是前一个pod安装的剩余部分?

  • 4

    我通过选择从 CocoaPods 下载并构建它的项目解决了这个问题,您可以单击管理方案,以便它可以出现在运行栏中 . 然后,您可以重建您的项目 . 希望它有所帮助 .

  • 0

    在更新我的Podfile并进行pod更新后,这发生在我身上 .

    出于某种原因,我有一个“Pods_ [ProjectName]”框架文件出现在我的项目下的“目标”>“常规”>“链接的框架和库”下 .

    删除它然后清理/重建修复了问题 .

  • 55

    你应该删除你的项目一些文件作为这张图片 .

    your should delete the pods.framework and pods mark red files

  • 0

    在文件夹 PodsProject Navigator 中,我的 Pods.framework 在那里是红色的 . 它也出现在 Linked Frameworks and Libraries 中 . 我删除了两个引用,错误消失了 .

    TL;DR

    删除 Pods.framework

    • 名为 Pods 的文件夹

    • Linked Frameworks and Libraries

  • 5

    如果您打开.xcworkspace文件但仍然遇到相同的错误:

    delete all the contents of Pods directory and from command line write "pod install" to resolve the issue.
    
  • 8

    谁找到这个问题 . 我正在使用NativeScript并得到了同样的错误 .

    That happen becouse I opened the file .xcodeproj, but we must open the project by the file .xcworkspace.

  • 20

    只需从“您的项目 - >常规 - >链接的框架和库”列表中删除您的.framework .

  • 11

    解决我的问题的其他方法是在Target - > Build Settings - > Other linker Flags下删除“-framework”和你的框架“name” .

    它发生在我试图移除一个吊舱 .

  • 0

    步骤1

    您需要做的第一件事是删除Podfile,Podfile.lock,Pods文件夹和生成的工作区 .

    第2步

    接下来,在.xcodeproj中,删除对Pods.xcconfig文件和libPods.a文件的引用 .

    第3步

    在Build Phases项目选项卡中,删除Check Pods Manifest.lock部分(打开),Copy Pods Resources部分(底部)和Embed Pod Resources(底部) .

    第4步

    删除Pods.framework .

    您可能想要做的唯一事情是包括您之前使用的一些库 . 您可以通过简单地将pods文件夹中的任何文件夹拖放到项目中来实现此目的(我更喜欢将它们放入我的Supporting Files文件夹中) .

    它对我有用 .

  • 2

    在我的情况下,我可以在设备和模拟器上构建它,但在归档时具有相同的错误 . 为了解决这个问题,我必须这样做

    • 删除 Pods.framework

    • 确保嵌入 Pods-<project-name>.framework

    您将在TARGETS - > Linked Frameworks and中找到设置库 .

  • 133

    使用Xcode 8.3接受的答案并没有添加截图以便于清晰 . 出于某种原因,Xcode试图链接以前不再存在的podfile设置 . 我所要做的就是删除额外的引用,一切正常 .
    Screenshot of Xcode Linked Frameworks and Libraries

  • 1

    Xcode 9 or 10

    安装https://github.com/CocoaPods/cocoapods-deintegrate

    pod deintegrate
    

    然后

    pod install
    
  • 15

    你很可能试图让pod进入你的项目吗?唯一的方法是创建一个使用CocoaPods的独立项目 .

    关闭您正在使用的所有工作空间 .

    接下来,确保您的Podfile完全准备就绪 .

    在命令行中,无论文件位于何处,请键入以下命令:

    pod deintegrate
    

    然后,安装你的pod agian .

    pod install or pod update
    

    现在,您可以使用项目的新工作区进行开发 . 查找名为.workspace的文件 . 使用该文件!

    这是使用CocoaPods的指南

  • 11

    删除和更新pod后我仍然有同样的问题 .

    我提出了这个问题 . 我是've found that previous developer put flag in ' Build Settings -> Other Linker Flags ' with Framework name (in my case -framework ' OGVKit') .

    删除该标志后,项目正确构建 .

相关问题