Apple Mach-O 链接器错误解析
Posted
技术标签:
【中文标题】Apple Mach-O 链接器错误解析【英文标题】:Apple Mach-O Linker Error Parse 【发布时间】:2014-03-19 14:38:47 【问题描述】:我最近将 ios Parse Framework 添加到了我的 Xcode 5 项目中。我现在收到 10 个错误......代码中没有。它们都是 Apple Mach-O 链接器错误。我把框架拿出来,错误就消失了。我正在使用最新的 Parse.framework,所以我不知道为什么会出现这些错误。
我还有另一个问题,现在我更新到 Xcode 5.1,当我使用 UITabBarController 或者只是想向 ViewController 添加一个标签栏时......我变得很奇怪。整个栏变成纯灰色...
解析 Mach-O 链接器错误图片 http://postimg.org/image/s0y7b6a23/
UITabController 问题图片 http://postimg.org/image/osp4kdyej/
【问题讨论】:
不.... :( 那样不行... 【参考方案1】:根据 Parse iOS 快速入门文档:
您需要将所有这些框架添加到您的构建目标中
【讨论】:
你知道我第二个问题的答案吗? 我还没有更新到 5.1 ,你应该把它作为一个单独的问题发布,并有适当的标题。其他人可能会提供帮助 海量海量帮助【参考方案2】:我在使用 Parse SDK 的 v1.6.2 时遇到了类似的链接器错误。除了我有大约 30 个错误。
我最终解决了这个问题,方法是从 MyTarget > Build Settings > Linking 下的 other linker flags
中删除 -ObjC
链接器标志。
这就是 Parse 文档的快速入门部分中的示例 Parse 项目所做的,所以我们假设它是正确的。
【讨论】:
对于 Cocoapods :我花了很长时间才弄清楚如何将 Parse 与 Cocoapods 一起使用。步骤如下: 1. 像上面一样删除 ObjC 链接器标志 __ 2. 使用pod intstall --no-integrate
安装 CocoaPods __ 3. Drag the generated pods project into xcode as a subproject。 __ 4. 除了创建新目标、将二进制文件与库链接以及添加 -ObjC 标志外,请按照链接中的步骤操作 __ 如果遇到问题,请在 cmets 中标记我,我会尽力提供帮助。
但是我在使用 Google Map Kit 时遇到了一个问题,因为有必要为此设置 -ObjC 标志。你有什么想法处理这种情况吗?【参考方案3】:
您可以尝试在 target->Build Settings->Library Search Paths 下为您的第一个问题删除路径。
【讨论】:
【参考方案4】:解决这个问题的逐步解决方案(修改Xcode项目的配置是没有用的,你只需要使用所有软件、API、工具的最新版本+清理所有XCode构建和一切会好的):
1 - 使用最新版本的 Xcode、Swift/Objective-C 和 iOS。
2 - 删除所有 Xcode 构建。
rm -rf ~/Library/Developer/Xcode/DerivedData/*
3 - 安装/更新 Cocoapods(使用最新版本很重要)来管理依赖关系。
sudo gem install cocoapods
4 - 更新您的 Podfile:
vim Podfile
pod '[Name of the API]', '>= [Any API version]'
5 - 更新您的本地存储库:
pod repo update
6 - 更新Xcode项目的依赖:
pod update
通常从那时起,您的“Apple Mach-O Linker Error Parse”将消失。
【讨论】:
【参考方案5】:关于您的第二个问题 - 我的标签栏中的图片尺寸不正确,得到的结果与您所说的相同。我将它们从标签栏中删除,它又恢复了正常。不确定这是否回答了您的问题,但这样做为我解决了问题。标签栏图像应为 50x50。
【讨论】:
【参考方案6】:好的,2015 年 7 月,我尝试了上述所有解决方案,但最终通过使用通过 CocoaPods 添加 Parse 并直接在我的项目中删除(或不首先添加)框架来解决这个问题。
【讨论】:
以上是关于Apple Mach-O 链接器错误解析的主要内容,如果未能解决你的问题,请参考以下文章