0

我想将 PLCrashReporter 集成到我的静态库项目中,并生成一个嵌入它的 .framework。

到目前为止,我遵循相同的层次结构从他们的源代码 XCode 项目中导入代码。将文件拖放到我的 XCode 项目中。很多文件需要链接器标志,因为它们不使用 ARC,但我是。

不,我遇到了一个我不太理解的问题,可能是因为我在使用 Objective-C 时的低级经验有限。

因此,在 PLCrashSignalHandler.mm 文件中有一个带有两种情况的开关,并且都停止编译并出现错误“情况值不是常量表达式”。

switch ((uintptr_t) (next->value().action.sa_handler)) {
                case ((uintptr_t) SIG_IGN):
                    /* Ignored */
                    handled = true;
                    break;

                case ((uintptr_t) SIG_DFL):
                    /* Default handler should be run, be we have no mechanism to pass through to
                     * the default handler; mark the signal as unhandled. */
                    handled = false;
                    break;

                default:
                    /* Handler registered, execute it */
                    next->value().action.sa_handler(signo);
                    handled = true;
                    break;
            }

case ((uintptr_t) SIG_IGN):case ((uintptr_t) SIG_DFL):停止生成上述错误。

他们的源代码正在正确构建项目,所以我很好奇我在这里错过了什么。

谢谢。

4

0 回答 0