每次我从CocoaPods导入文件时,我都会得到一个Apple Mach-O链接器错误。

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_FBSession", referenced from: someFile
ld: symbol(s) not found for architecture arm64

我有大约12个这样的耳机,用于我使用的各种pod。

我试图使用XCode 5为iPhone 5S构建。

我一直在尝试各种解决方案这里所以,但还没有得到任何工作。

我如何解决这个苹果Mach-O链接错误?


刚刚发现了另一个可能很有趣的警告,我希望这能让我找到解决方案:

Ignoring file ~/Library/Developer/Xcode/DerivedData/SomeApp/Build/Products/Debug-iphoneos/libPods.a, 

~/Library/Developer/Xcode/DerivedData/someApp/Build/Products/Debug-iphoneos/libPods.a


当前回答

一整天都在纠结这个问题。

我有多个方案,它对演示,内部,发布编译良好-然而调试方案只是不会编译,并抱怨libPods。一个失踪。

解决方案是进入项目->目标->构建设置,并将“仅构建活动架构”更改为YES。清洁和建造!几个小时的头疼终于解决了!

其他回答

你只需要从有效架构中删除arm64,并将NO设置为仅活动架构。现在只需要清洁、构建和运行。您将不会再次看到此错误。

:) KP

添加“Security.framework”对我来说很管用。

如果你在发布模式(或存档)构建时遇到这个问题,请查看我的这个答案:https://stackoverflow.com/a/61446892/5502121 长话短说:

在文件>项目设置中将构建系统设置为新建构建系统… 删除ios和build_ios文件夹 运行flutter create。初始化新的ios模块 运行pod安装 跑扑酒吧得到 检查你的Xcode构建配置(它应该是发布模式和通用iOS设备)

你可以开始了

这个链接错误消息表明定义它的源文件没有被标记为应用程序目标的一部分。找到源文件,并使用右边的file属性检查器来检查应用程序目标的目标成员条目。

解决方案: 选择文件-> openFile Inspector ->参见目标成员->检查如果未选中目标您的运行目标

我也遇到过同样的问题。 我在这里找到的解决方案:为什么链接器链接带有错误的静态库?iOS

添加$(TOOLCHAIN_DIR)/usr/lib/swift/$(PLATFORM_NAME)到库搜索路径解决了这个问题。