gpt4 book ai didi

xcode4 - XCode 4 中的 PLCrashReporter - 无法在模拟器中编译

转载 作者:行者123 更新时间:2023-12-02 04:42:16 24 4
gpt4 key购买 nike

我一定在这里做了一些完全愚蠢的事情,但我无法将 PLCrashReporter 框架包含在我的项目中。以下是我获取框架所采取的步骤:

  1. 从 Google 代码的官方项目网站下载 .dmg 文件
  2. 将 CrashReporter.framework 文件夹复制到我的项目根目录
  3. 通过以下方式添加框架:转到我的项目,选择目标,转到“构建阶段”选项卡,打开“链接二进制文件与库”部分,单击加号,然后添加 CrashReporter.framework 文件夹

我正在使用我的类文件中的框架

#import <CrashReporter/CrashReporter.h>

当我尝试在 4.3 模拟器下编译时,出现以下错误:

架构 i386 的 undefined symbol : “_OBJC_CLASS_$_PLCrashReporter”,引用自: AppDelegate+CrashReporting.o 中的 objc-class-ref “_OBJC_CLASS_$_PLCrashReport”,引用自: AppDelegate+CrashReporting.o 中的 objc-class-refld:未找到架构 i386 的符号clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

当我在设备下编译时,一切正常。我需要包含某种 header 或库搜索路径吗?

该应用程序在 XCode 3 下编译,在所有配置下都没有问题。

最佳答案

我遇到了同样的问题并且能够解决它。这是我完成的步骤...

  1. 下载PLCrashReporter source release并解压。
  2. 打开 PLCrashReporter xcode 项目。该项目设置为使用旧的 SDK,更新每个目标所需的所有 SDK 以消除警告。这也需要在下一步中进行编译。
  3. 导航到 CrashReporter-iPhoneSimulator 目标。在“build设置”下:a) 将“执行单对象预链接”设置为“否”,b) 将“Mach-O 类型”设置为“静态库”。
  4. 选择 CrashReport-iPhoneSimulator : [IOS 模拟(即 iPhone 4.3 Simulator)] 并点击构建。
  5. 导航到 PLCrashReporter 的构建目录。对我来说,它是/Users/username/Library/Developer/Xcode/DerivedData/CrashReporter-(随机字符)/Build/Products/Debug-iphonesimulator
  6. 将 libCrashReporter-iphonesimulator.a 从第 5 步中的构建目录复制到要添加崩溃报告器的 iPhone 应用程序项目目录。
  7. 在 xcode 中打开您的 iPhone 应用程序项目。
  8. 下载PLCrashReporter binary release并将框架解压到本地目录。
  9. 使用此 SO post 将 CrashReporter 框架添加到您的项目中.
  10. 按照与步骤 9 相同的过程,将 libCrashReporter-iphonesimulator.a 静态库添加到构建阶段的“将二进制文件与库链接”部分。添加静态库时不需要*.framework目录。
  11. 查看目标中的“链接二进制文件与库”。确保 libCrashReporter-iphonesimulator.a 列在 CrashReporter 框架上方。您可以拖放来重新排序。

我希望这会有所帮助。

关于xcode4 - XCode 4 中的 PLCrashReporter - 无法在模拟器中编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6192897/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com