2 starwar2012 starwar2012 于 2013.03.25 10:40 提问

苹果O-math链接错误

创建了一个名为ObjCWorkAppMath.mNSObject文件。包含了一些函数在里面,我想在ViewController使用这个类,的那是编译失败返回了错误:

duplicate symbol _OBJC_METACLASS_$_ObjCWorkAppMath in:
    /Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppMath.o
    /Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppViewController.o
duplicate symbol _OBJC_CLASS_$_ObjCWorkAppMath in:
    /Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppMath.o
    /Users/ctkt/Library/Developer/Xcode/DerivedData/ObjCWorkApp-hgxcjtjhzwxhqxcmxgkpucpfpieq/Build/Intermediates/ObjCWorkApp.build/Debug-iphonesimulator/ObjCWorkApp.build/Objects-normal/i386/ObjCWorkAppViewController.o
ld: 2 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

试了很多方法也没解决,请高手帮帮忙,多谢多谢。

#import "ObjCWorkAppViewController.h"
#import "ObjCWorkAppMath.m"

@interface ObjCWorkAppViewController ()

@end

@implementation ObjCWorkAppViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end

2个回答

wxcaixiaowei
wxcaixiaowei   2013.08.01 10:55

你的项目多加了一个.m文件

CloveI
CloveI 大神,你能说说是哪个文件被多次引用了吗?可能大家都知道是重复引用了同一个.m,但是是哪个被重引用了还是找不到,解决不了问题
接近 5 年之前 回复
ipqhjjybj
ipqhjjybj   2013.11.16 17:46

ObjCWorkAppMath ObjCWorkAppViewController 里的重引用解决下就好了

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Iptables指南.chm(可以用)
之前也下载过一个,有链接错误,这个是无链接错误的,请放心下载
百度UEditor在线编辑器上传图片提示网络连接错误,请检查配置后重试 asp.net 4.0
我用的是ASP.NET的imageUp.ashx里面有错误,去掉这个就可以了,大概我用的是4.0框架的原因吧 修改掉的確可以用了,沒有問題
关于链接错误的一个罕见原因
一个常见的链接错误,一个罕见的原因。层层分析,抽丝剥茧,终于水落石出。
VC++ 6.0 链接错误 ”LNK2001“原因及解决办法
<br />出现error LNK2001主要是有以下原因导致:<br />1.在工程中include "***.h"添加了,但没有Add to Project,然而工程中又要用到***.h中定义的函数。<br />2.应用lib文件导致。<br />解决方法:<br />1.将***.h 和***.cpp Add to Project. 如在此可能是hcomm.h,hcomm.cpp。<br />2.在Project->Setting->Link中设置,将hcomm.lib放到input中,记得hcomm
链接的时候出错
g++链接错误
VS编译错误与链接错误汇总
VS中常见的编译错误与链接错误在MSDN中都有总结地址为:https://msdn.microsoft.com/zh-cn/library/4x3c2e37.aspx
C++链接和运行相关错误
http://blog.csdn.net/pipisorry/article/details/37610401 LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏 错误: 在更新VS2010,或者卸载VS2012安装2010后,建立Win32 Console Project/MFC项目时会出现"LINK : fatal error LNK
类模板和模板函数连接出错处理
对C++编译器而言,当调用函数的时候,编译器只需要看到函数的声明。当定义类类型的对象时,编译器只需要知道类的定义,而不需要知道类的实现代码。因此,因该将类的定义和函数声明放在头文件中,而普通函数和类成员函数的定义放在源文件中。  但在处理模板函数和类模板时,问题发生了变化。要进行实例化模板函数和类模板,要求编译器在实例化模板时必须在上下文中可以查看到其定义实体;而反过来,在看到实例化模板之前,编
VS2005编译链接错误小结
VS2005编译链接错误小结
链接错误
最近将以前实验室师兄写的代码重新实现,代码实现之后,编译通过,却无法链接,可执行文件不能生成报错为:TLS definition in /lib/libc.so.6 section .tbss mismatches non-TLS reference in [...] google了一下,发现了一个解决方法:http://www.opencascade.org/org/foru