我试图在我的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

谢谢你!


当前回答

在我的例子中,有一个引用到我删除的库

目标>构建设置>运行路径搜索路径

从Podfile中删除库并更新它显然没有删除它,所以我必须手动执行,现在一切都正常了。

其他回答

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

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

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

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

我试了这里所有的答案,没有一个能答对。我最终通过将部署目标从10.0提升到11.0来让它工作。我不知道为什么会修复它,但我怀疑这与升级到Xcode 10.2.1有关。

圆荚体初始化 关闭当前xcode项目 以xcworkspace后缀重新打开xcode项目

在这里输入图像描述

之前的回答都没有指出问题的根源。 所以我希望这对其他人有用。

在我的情况下,我最终不得不在我的项目的根编辑我的podfile。当我第一次创建我的podfile时,swift静态库不受支持。 所以我一直在使用use_frameworks!在我的播客文件下,我的每个目标如下:

之前

...
target 'targetName' do
   use_frameworks!
   pod 'podName', '~> 0.2'
end

...
target 'targetName' do
   pod 'podName', '~> 0.2'
end

我删除了use_frameworks!从我的podfile一直安装框架,每次我运行pod install。在删除这一行之后,确保再次运行pod install并从Xcode中的Frameworks文件夹中删除任何红色的.framework引用。(尽管我的观点不同,如下所示。)

删除不再需要的.framework文件的图像

你也可以阅读更多关于use_framework的内容!在这里。

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

我发现以前的开发人员把标志放在“构建设置->其他链接器标志”与框架名称(在我的情况下-框架“OGVKit”),这使得问题。

删除该标志后,项目将正常构建。