Xcode - 替换类文件后链接错误_OBJC_CLASS _ $ _"className"

Cod*_*gle 10 xcode linker objective-c linker-errors ios

介绍

在我正在进行的当前项目中,我们正在使用ChartBoost SDK进行popop商业广告.我们一直在使用这个SDK一段时间没有任何问题.它是一个非常简单的库,基本上只有一个名为"ChartBoost.h"的头文件以及一个"libChartBoost.a"文件.

现在我们刚刚用新版本更新了SDK文件.我在这里做的只是通过"Move To Trash"从项目中删除旧的SDK文件.我之后做的只是将新的SDK文件移动到项目中,添加它们的引用.

问题

在完成此操作并编译项目后,我突然遇到2个链接错误.这是它的截图:

截图

我已经尝试了几乎所有我能想到的尝试去除错误.我已经清理了项目和项目文件夹,并且我还试图通过组织者窗口删除项目的派生数据.

我很确定这与链接器试图使用旧文件的引用有关吗?但我不知道如何才能删除那些现在无效的引用.

这里有没有人知道如何解决这个问题?

[编辑]将ChartBoost.a链接到二进制文件

所以我尝试通过"Build Phases"选项卡将ChartBoost.a文件链接到二进制文件.这确实摆脱了两个原始错误,但显示了8个新错误,如下面的屏幕截图所示:

链接错误2

我不太清楚遗憾的是这些链接错误是什么意思:(任何人都有任何想法?

Kur*_*vis 14

在您的应用程序目标中,查看"链接二进制库"阶段中的"构建阶段".

它应该包括libChartBoost.a.

如果没有,请按+按钮并选择libChartBoost.a.

我很确定这与链接器试图使用旧文件的引用有关吗?

不.您从项目中删除了旧文件,其中包括"Link Binary With Libraries"构建阶段中的引用.将新文件添加到项目时,您没有添加该引用.

  • 看看有问题的班级名称并做一些研究.SCNetworkReachabilityXXX位于iOS`SystemConfiguration`框架中,因此将其添加到链接库中.`SBJson3Parser`是你的`libChartBoost`正在使用的JSON解析器库.您可以在[最新版本的ChartBoost SDK](http://www.chartboost.com/support/sdk)的`JSON3`文件夹中看到所有这些文件?将它们添加到您的项目中! (2认同)