【问题标题】:iOS Build settings Other Linker FlagsiOS 构建设置 其他链接器标志
【发布时间】:2026-01-25 17:05:01
【问题描述】:

我有一个用 swift 编写的项目,当程序不断崩溃时,我正试图将 GoogleSignIn 集成到我的项目中:

-[__NSDictionaryI gtm_httpArgumentsString]: unrecognized selector sent to instance

然后我用谷歌搜索了这个问题并找到了将 -ObjC Other Linker Flag 添加到我的构建设置的解决方案。

所以我的问题是这一步有什么作用以及它是如何解决问题的。 谁能解释一下什么是其他链接器标志以及它的作用?

【问题讨论】:

    标签: ios xcode swift


    【解决方案1】:

    有关“其他链接器标志”的解释以及为什么要解决这样的问题,请参阅:
    https://developer.apple.com/library/mac/qa/qa1490/_index.html

    此标志使链接器加载定义了 Objective-C 类或类别的库中的每个目标文件。虽然此选项通常会导致更大的可执行文件(由于将额外的目标代码加载到应用程序中),但它将允许成功创建包含现有类的类别的有效 Objective-C 静态库。

    【讨论】:

    • 我们什么时候需要设置“其他链接器标志”,因为链接器应该足够智能以加载它需要的每个对象?