Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c Apple Mach-O链接器(id)错误链接器命令失败,退出代码为1,加载重复符号错误,在xcode之外工作正常_Objective C_Duplicates_Linker Errors_Symbols_Mach O - Fatal编程技术网

Objective c Apple Mach-O链接器(id)错误链接器命令失败,退出代码为1,加载重复符号错误,在xcode之外工作正常

Objective c Apple Mach-O链接器(id)错误链接器命令失败,退出代码为1,加载重复符号错误,在xcode之外工作正常,objective-c,duplicates,linker-errors,symbols,mach-o,Objective C,Duplicates,Linker Errors,Symbols,Mach O,我目前正在学习如何使用Objective-C 我在做一个涉及课堂的简单项目 我决定将它放到Xcode中进行一些简单的可视化调试 但是在熨平所有错误和警告后,我遇到了: duplicate symbol _OBJC_IVAR_$_Customer._fName in: /Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates

我目前正在学习如何使用Objective-C 我在做一个涉及课堂的简单项目 我决定将它放到Xcode中进行一些简单的可视化调试 但是在熨平所有错误和警告后,我遇到了:

duplicate symbol _OBJC_IVAR_$_Customer._fName in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
duplicate symbol _OBJC_IVAR_$_Customer._lName in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
duplicate symbol _OBJC_IVAR_$_Customer._age in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
duplicate symbol _OBJC_IVAR_$_Customer._rank in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
duplicate symbol _OBJC_IVAR_$_Customer._intention in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
duplicate symbol _OBJC_METACLASS_$_Customer in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
duplicate symbol _OBJC_CLASS_$_Customer in:
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/main.o
/Users/Slench/Library/Developer/Xcode/DerivedData/NameRankIntention-hlaqvlslfjimqdeysxqiyloirdus/Build/Intermediates/NameRankIntention.build/Debug/NameRankIntention.build/Objects-normal/x86_64/NRaI.o
ld: 7 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
现在奇怪的是,我把“固定代码”放回升华文本中,在那里我保存了它,然后通过终端编译,在那里它工作得很好,没有错误没有警告什么都没有

我已经通读了一些关于这个的其他问题,解决方法要么是他们找到了重复的声明,要么是他们有一个同名的额外文件,导致了重复的声明。。。 我没有


所以。。。有什么帮助吗?

您可能是无意中在main.m中导入了“NRaI.m”文件吗?

您可能是无意中在main.m中导入了“NRaI.m”文件吗?

为什么会这样?这样做可以让它在Xcode之外工作。你能解释一下为什么会有这样的问题吗?或者您可以指出任何这样做的文档。@manishKungwani XCode计划将.m文件作为独立的对象模块构建到目标中。包含另一个模块是合法的,因为它只是一个预处理器指令。ObjC和任何基于C的语言都将编译main.X而不会产生任何问题。但是,当您转到链接最终构建时,链接器将无法在两个对象模块中找到符号的精确副本。因此,正确的做法是包含接口文件以获得实现声明,并让另一个.m编译到它自己的obj模块中,以便我们可以稍后将其链接以解析符号。这为什么不好?这样做可以让它在Xcode之外工作。你能解释一下为什么会有这样的问题吗?或者您可以指出任何这样做的文档。@manishKungwani XCode计划将.m文件作为独立的对象模块构建到目标中。包含另一个模块是合法的,因为它只是一个预处理器指令。ObjC和任何基于C的语言都将编译main.X而不会产生任何问题。但是,当您转到链接最终构建时,链接器将无法在两个对象模块中找到符号的精确副本。因此,正确的做法是包含接口文件以获得实现声明,并让另一个.m编译到它自己的obj模块中,以便我们以后可以链接它来解析符号。