我有一个库,它开始在XCode 4.4下投掷一些链接器警告。警告符合“ld:warning:instance method”methodName:’in category from overrides method from class in“
框架仍然可以正常工作,我认为写下来的公司会在下一个版本中纠正这个问题,但是这些警告暂时是非常讨厌的。有没有办法关闭它们而不禁用所有链接器警告?
解决方法
通过在Xcode构建设置区域中的“其他链接器标志”添加标志,我提出了两个选项:
1)添加-Xlinker -w将禁止所有链接器警告,无论类型(这是-w标志为ld(1))。显然这将会安静这个特别的警告,但所有其他ld警告也是如此。
2)添加-Xlinker -no_objc_category_merging将跳过优化步骤,其中链接器将链接中的所有类别方法组合到基类中,然后才会在运行时发生。启动时稍微有点慢,但是在运行时可能会比方法快一些,因为在这个步骤中,ld(1)发出警告,所以它也会跳过。
看来,ld没有办法通过外科手术来抑制任何个别的警告编译器的方式,尽管它有一些特殊的标志,或它们的一组(没有一个帮助这个)。上述两种解决方案都不适用于生产代码,但在某些情况下,有一种或另一种可能有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。