cocoapods - ld:找不到框架
Posted
技术标签:
【中文标题】cocoapods - ld:找不到框架【英文标题】:cocoapods - ld: framework not found Pods 【发布时间】:2017-01-17 20:00:39 【问题描述】:我一直在尝试使用 cocoapods 安装一个名为 SabBar 的 pod,我已经成功安装了 cocoapods 以及初始设置。但由于某种原因,我在编译时遇到了这个错误:
ld:警告:找不到选项“-F/Users/Andy/Library/Developer/Xcode/DerivedData/JymJam-gocrzdctroqhlaedmghajkejcugm/Build/Products/Debug-iphonesimulator/SabBar”的目录
ld:找不到框架 SabBar clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
我查看了其他solutions,但它们似乎对我不起作用。
这就是我的 Podfile 的样子:
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!
target "JymJam" do
pod 'SabBar'
end
我试过删除“use_frameworks!”但这不起作用,因为我的项目是基于 swift 的。
【问题讨论】:
你的 cocoapods 是最新的吗?当您尝试安装 xcode 时,您的 xcode 项目是否已关闭?更好的是,在安装这个 cocoapod 时退出 Xcode。 可能会从您的项目中删除 podfile 并重新安装会更好。 ***.com/questions/16427421/… 很久以前我对此进行了很多调查。我在上面写了一个完整的博客。也许这会对你有所帮助。 kandelvijaya.com/?p=152 你在使用 xcworkspace 吗? 您找到解决方案了吗? 【参考方案1】:首先关闭工作区 第二次清理派生数据(~/Library/Developer/Xcode/DerivedData/)
首先将这一行放入 Podfile 中,在这一行之后 config = use_native_modules!
use_react_native!(:path => config["reactNativePath"])
pod 'CocoaAsyncSocket'
然后在终端中运行以下命令 吊舱解体 rm Podfile.lock
然后手动删除项目的工作区
然后转到 iOS 文件夹
然后运行下面的命令 Pod 安装
可以看到pod install 命令后,Podfile.lock 和workspace 自动生成了。
然后打开工作区并清理项目并再次构建,然后您会收到“多个命令生成派生数据”的新错误,因此,请转到构建阶段 > 复制捆绑资源并从那里删除 info.plist 和字体 ttf 文件。
注意:工作区必须是“新构建系统”,..
然后构建项目..
效果很好。
【讨论】:
【参考方案2】:我通过以下两个步骤解决了这个问题:
首先进入终端中的项目路径,然后应用以下步骤
1 : 吊舱解体
2 : pod 安装
【讨论】:
【参考方案3】:我刚刚从 Target-Build 阶段删除了 libPod.a,它起作用了。
【讨论】:
【参考方案4】:使用框架!仅当必须将 Pod 作为动态框架导入时才需要。
有几种可能:
-
您没有使用生成的 xcworkspace 文件。
目标名称错误
您没有使用 cocoapods 生成的 xcconfig 文件
【讨论】:
以上是关于cocoapods - ld:找不到框架的主要内容,如果未能解决你的问题,请参考以下文章
ld:通过 cocoapods 从 4.x.x 升级到 5.x.x firebase 后找不到框架 FirebaseAnalytics
Cocoapods - 找不到框架 FirebaseCoreDiagnostics