在为设备编译时,我可以使用 plcrashreporter 项目页面上提供的预构建框架,但不能用于模拟器。我在这里描述了同样的问题。
我假设预建框架不支持模拟器的架构,所以我下载了 plcrashreporter 源。我打开了 Xcode 项目并选择了CrashReporter-iOS-Simulator > iPhone 4.3 Simulator
目标。当我尝试构建项目时,出现此错误:
libtool:未知选项字符“D”在:-D__IPHONE_OS_VERSION_MIN_REQUIRED=30000
当我尝试构建大多数其他目标(例如设备)时,我得到了同样的错误。
我的下一步是尝试将源文件添加到我的项目中。我不再有上述问题;但是,当我尝试编译时出现此错误:
致命错误:找不到“crash_report.pb-ch”文件 [2] #import "crash_report.pb-ch" ^ 产生 1 个错误。 命令 clang 失败,退出代码为 1
错误消息中提到的crash_report.pb-c.h
文件根本不存在;我搜索了 plcrashreporter 源代码树和互联网。因此,我不得不假设这个文件应该以某种方式生成,但我不知道如何生成。
(注释掉 PLCrashReport.m 中crash_report.pb-c.h
包含的行会导致许多其他编译错误。)