Xcode 构建项目时 Google 登录库出现 7 条警告

Xcode 7 warnings with Google Signin lib when building project

我在 Xcode 7 上收到了这个问题警告(C无法解析外部类型...)。我 Google 它并找到了所有解决方案,但没有解决问题。

Google 登录库是通过 Pods (pod 'Google/SignIn') 添加的。

有关详细警告信息,请参见下图 link。

Warnings on Xcode 7 with Google SignIn lib

自从在 Xcode 7 和 7.0.1 上更新到 GoogleSignIn 3.3.0+ 后,我也 运行 遇到了这个问题。

到目前为止,我找到的唯一有用的解决方案是使用 here 中的这些设置。

 - Precompile Prefix (GCC_PRECOMPILE_PREFIX_HEADER) = NO Debug
 - Information Format (DEBUG_INFORMATION_FORMAT) = DWARF with dSYM
 - Enabled Modules (C and Objective-C) (CLANG_ENABLE_MODULES) = NO

为了 Debug.

,我通过将调试信息格式设置为 DWARF 来消除警告
- Information Format (DEBUG_INFORMATION_FORMAT) = DWARF

个人不太喜欢这个,不知道有没有其他副作用。如果有人可以评论可能的负面影响,我会很乐意阅读。

编辑: 我发现其他人也在使用这个解决方案。请参阅 MikeElardVS 的评论 here

编辑2: 正如 blahartinger 的回答,我可以确认 GoogleSignin 库已经更新,不再显示这些警告。将删除上述解决方法。感谢 blahartinger 指出。

我确实找到了根本原因。看起来 GoogleSignIn 库在设置 "Debug Information Format" 时有问题,如果它被设置为 "DWARF with dSYM File"。如果您将值设置为 "DWARF"(对于调试或发布配置中的 运行 应用),警告消失。但这不是预期的解决方案,我们需要 dSYM 文件来调试问题。

更多信息,我将 "Debug Information Format" 调试设置为 "DWARF",发布设置为 "DWARF with dSYM File"。如果 运行 应用处于调试配置中,则不会出现警告。如果 运行 应用程序处于发布配置中,则会出现警告。

GoogleSignIn 库的 2.4.0 版修正了这个问题(终于!:))