0

我正在开发一个运行良好的应用程序,但是当我尝试包含 NinjaMyApp 文件夹(使用拖放)时,出现重复符号错误。

ld: duplicate symbol _OBJC_CLASS_$_InfoView in /Users/xyzpath/NinjaMyApp-v0.32/NinjaMyApp-v0.32/4mnow-1.32/4mnowLaunchPad/4mnowLaunchPad.a(InfoView.o) and /Users/xyzpath/NinjaMyApp-v0.32/NinjaMyApp-v0.32/4mnow-1.32/4mnowBasic/4mnowBasic.a(InfoView.o) for architecture i386

提前致谢。

4

4 回答 4

2

我对您正在使用的静态库一无所知,但显然其中两个在其中的类有重复的名称:LaunchPad.a 和 Basic.a。也许它们不应该一起使用?

于 2012-09-18T12:43:28.830 回答
1

不要#include 或#import .m 文件。只需将这些 .m 文件添加到 Target | 构建阶段。不要将 .h 文件添加到构建阶段,而是将 #import .h 文件添加到您需要这些功能的任何地方。

编译器知道它只是一个“仅供参考”的头文件,并且当它编译 .m 文件并将它们全部放入 1 个可执行文件时,函数的主体将可用

于 2012-09-29T05:58:42.000 回答
0

似乎您两次包含类 InfoView:在项目中搜索重复文件并将其删除。您可以通过在项目导航搜索栏中搜索名称来做到这一点:

Xcode 项目导航搜索栏

于 2012-09-18T12:44:37.303 回答
0

看起来您已导入 InfoView.m 而不是 .h

于 2012-09-18T12:44:48.940 回答