首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >当我有正确链接的框架时,为什么我得到"_OBJC_CLASS_$...,referenced:“链接器错误?

当我有正确链接的框架时,为什么我得到"_OBJC_CLASS_$...,referenced:“链接器错误?
EN

Stack Overflow用户
提问于 2012-02-23 08:05:46
回答 4查看 29K关注 0票数 10

My Problem

编译一些_OBJC_CLASS_$项目时(在iOS和Mac项目中都会发生这种情况),我得到了正确链接框架和导入的链接错误。

设置

  • One应用程序目标
  • One测试目标
  • 所有框架链接正确

在编译时,我得到以下链接器错误:"_OBJC_CLASS_$_JGCountdownTimer",引用自: objc-class-ref in JGCountdownTimerTestCase.o

用于测试中使用的许多类。

我尝试过的东西

我为测试目标和应用目标编译了一个类,它修复了这个问题。frameworks

  • If
  • 检查了导入是否都是非标准的。但是之后我收到了来自编译器的其他警告。
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-02-23 08:09:08

快速回答

将以下行复制并粘贴到您的构建设置中:

GCC_SYMBOLS_PRIVATE_EXTERN =否

在目标构建设置中,查找"Symbols Hidden by Default“。对于Debug配置,您想要"No“。

我断断续续地遇到这个问题已经有好几个月了,我刚刚找到了原因。

票数 12
EN

Stack Overflow用户

发布于 2017-05-06 18:17:30

我也遇到过类似的问题。我得到了链接器错误:

_OBJC_CLASS_$_MyClass

问题是我为MyClass声明了一个@interface,但没有声明它对应的@implementation

修复方法是简单地添加

代码语言:javascript
复制
@implementation MyClass
@end
票数 14
EN

Stack Overflow用户

发布于 2012-02-23 08:08:36

不确定这是否是问题所在,但在新的编译器中,任何未显式引用/调用的obj-c都不会从库中链接。例如,当您在库中实现类别时,这会导致问题。

尝试将'-ObjC‘添加到您的目标的构建设置面板中的’附加链接器标志‘。耸肩

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9405237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档