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

ld:框架没有找到Pods Clang:错误:连接器命令失败,退出码为1(使用-v查看调用)

我试图删除我的pod目录,然后运行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

谢谢你!


当前回答

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

当你第一次运行'pod install'时,它会创建一个.xcworkspace文件,其中包括你原来的.xcodeproj和一个Pods项目。您需要关闭.xcodeproj并打开.xcworkspace。

当通过Xcode的新项目向导创建项目时,这是一个常见的问题——我经常忘记我不是在工作空间中,这是让Cocoapods正确链接所必需的。

其他回答

你很可能是想让这些豆荚进入你的项目,对吧? 做到这一点的唯一方法是创建一个使用CocoaPods的单独项目。

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

接下来,确保你的Podfile已经完全准备好了。

在命令行中,不管你的文件在哪里,键入命令:

pod deintegrate

然后,再次安装吊舱。

pod install or pod update

现在您可以使用项目的新工作区进行开发。寻找一个名为.workspace的文件。使用那个文件!

下面是使用CocoaPods的指南

步骤1

你需要做的第一件事是删除Podfile, Podfile。锁、Pods文件夹和生成的工作区。

步骤2

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

步骤3

在Build Phases项目选项卡中,删除Check Pods清单。锁定部分(打开),复制Pods资源部分(底部)和嵌入Pod资源(底部)。

第四

删除Pods.framework。

您唯一要做的就是包含您以前使用过的一些库。你可以通过简单地将pods文件夹中的任何文件夹拖到你的项目中(我更喜欢将它们放在我的Supporting Files文件夹中)来做到这一点。

这对我很管用。

这个问题快把我逼疯了,因为它突然发生了,却没有对项目做任何改变。我已经尝试了这篇文章(以及其他相关文章)中所有建议的解决方案,但没有一个能解决问题。

与我的其他项目(编译良好)唯一不同的是,这个项目名称包含一个口音(法国口音,“é”)。我重命名了项目和所有相关文件,它终于工作了!

也许这与更新到Xcode 10有关,因为这个项目在…

编辑:它似乎也失败时,使用一个项目的项目名称-在…

这就是我解决问题的方法。当我写下这个答案时,它就可以工作了

首先,我尝试了上面所有最固定的方法,

在目标的构建阶段从链接库和框架中删除Pods_xxx.framework是有帮助的,这个问题将会消失,但接下来的问题是我不能再导入pod .framework了。

然后,我尝试重新安装xcworkspace配置,这样我就可以找出真正的问题。所以我跑了

pod deintergate

然后重新安装我的吊舱:

pod install

这个工作很好,但问题仍然在那里,但我发现真正的问题是pods_xxx . frameworks没有被cocoapods构建脚本成功编译。我认为这才是解决问题的真正方法。

最后,我尝试编辑我的项目方案:

并在管理中加入Pods方案:

然后单独构建这个pod .framework,你会发现pod .framework图标又变成了true:

我认为现在你已经修复了“框架找不到Pods_xxxx.framework”的问题 但实际上我还有另一个问题:

所以我转到构建设置,用“${inherited}”编辑“框架搜索路径”, 现在所有问题都解决了,欢呼吧!!!!:)

我确实遇到过这个问题,因为我没有正确设置平台。

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

platform :ios

而不是

platform :osx