繁体   English   中英

错误:ld:找不到带有 CocoaPods 的 -lPods 的库

[英]Error: ld: library not found for -lPods with CocoaPods

在我使用 Cocoapods 安装 DTCoreText ( https://github.com/Cocoanetics/DTCoreText ) 后,当我尝试运行模拟器或设备时,总是出现错误!

ld: warning: directory not found for option '-L/Users/example/Desktop/ios/Pods/build/Release-iphoneos'
ld: warning: directory not found for option '-L/Users/example/Desktop/ios/Pods/build/Debug-iphoneos'
ld: library not found for -lPods-example
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

在我的“Link Binary With Libraries”中,“libPods”部分是红色的:

在此处输入图片说明

这是我的构建设置:

我的项目的设置:

在此处输入图片说明

我的 Pod 的设置:

在此处输入图片说明

编辑:

我不确定是什么问题,但是当我删除所有 DTCoreText 和 Cocoapods 内容并重新安装所有内容时,我解决了它!

建议尝试以下对我有用的方法:

a) 从目标设置视图中的“库”中搜索并双击以检查Library Search Paths的值

b) 列出$(inherited)两个值$(inherited)$(PROJECT_DIR)/Pods/build/Debug-iphoneos 删除后者。

c) 彻底清理、构建和运行

d) 再次运行pod install 请注意,该条目未恢复。

这也可能有帮助:

  1. 在你的主项目(不是 Pods)中选择主目标
  2. 转到构建阶段选项卡
  3. 转到链接二进制与库
  4. 删除导致问题的库(它可能是红色的)

确保您打开的是 .xcworkspace 文件,而不是 .xcodeproj

在我链接的二进制文件中,我同时拥有libPods.alibPods-MyProj.a 我之前已经将我的 Podfile 更新为有两个单独的目标(以使其在 Swift 中通过桥接编译测试),这意味着我必须手动删除旧的libPods.a依赖项。

我发现我的其他链接器标志构建设置中缺少$(inherited) 应用此选项修复了我看到的缺少库的问题。

我发现选择“查找隐式依赖项”(在产品/编辑方案下)将解决此问题,而不必添加 pod 作为目标。

在目标的构建设置页面中查找“库搜索路径”。 将 Debug 的文件夹名称从 Debug-iphoneos 更改为 Debug-iphonesimulator

确保缺失的 pods 库得到实际构建。 为此,请打开构建方案

Product > Scheme > Edit Scheme... > Build

添加 Pods 目标并将其放在抱怨库丢失的目标之前(在我的情况下,这是 UI 测试 - 我只是为此挣扎了几个小时......)

造成这个问题的原因有很多。

我们需要检查:

  • 构建设置$(inherited)
  • 检测所有隐式依赖
  • ......

故障排除http : //guides.cocoapods.org/using/troubleshooting.html

对我来说,错误是:Pods 目标不包含 i386 所需的架构切片。 因此,我单击了 Pods 项目 --> Pods-ProjectName 目标,然后在构建设置中,将DebugRelease 的Build Active Architecture Only 设置为 NO 这可确保构建模拟器和设备切片。 模拟器使用i386架构,实际设备使用x86-64。 所以你必须确保所有依赖项目的所有依赖目标都同时构建,如果你想同时在模拟器上运行和侧面加载到设备。

使用App扩展时,导航到扩展目标,过滤到库搜索路径,删除编译警告给你的路径。

Build SettingsVALID_ARCHS删除armv7为我解决了这个问题(Xcode 10.3)。 我能有后才提交armv7sarm64arm64eVALID_ARCHS

首先我跑了

sudo rm -r /Library/Developer/CommandLineTools

删除命令行工具目录。 然后我再次安装了命令行工具

xcode-select --install

这为我解决了这个问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM