Ios 如何避免xcodeproject和静态库之间的重复符号

Ios 如何避免xcodeproject和静态库之间的重复符号,ios,objective-c,xcode,static-libraries,Ios,Objective C,Xcode,Static Libraries,我有一个Main.xcodeproj,其中有一个名为Test.h和Test.m的文件,并且我将该项目中的一个静态库与同名文件(Test.h,Test.m)链接起来。我得到了重复符号的错误,因为Test.h和Test.m在静态库和包含库的xcode项目中都很常见。如果我通过重构>重命名对文件进行重构以对其进行重命名,则在库中或在项目本身中,它可以很好地编译 如何通过重构>重命名来避免这些错误而不更改文件 这里是loglibTest。a是静态库 duplicate symbol _OBJC_META

我有一个Main.xcodeproj,其中有一个名为Test.hTest.m的文件,并且我将该项目中的一个静态库与同名文件(Test.h,Test.m)链接起来。我得到了重复符号的错误,因为Test.h和Test.m在静态库和包含库的xcode项目中都很常见。如果我通过重构>重命名对文件进行重构以对其进行重命名,则在库中或在项目本身中,它可以很好地编译

如何通过重构>重命名来避免这些错误而不更改文件

这里是loglibTest。a是静态库

duplicate symbol _OBJC_METACLASS_$_Test in:
 /Developer/Xcode/DerivedData/Master-fmkociodeqhkyofkkwdmsymbykyh/Build/Intermediates/Master.build/Debug-iphonesimulator/Master.build/Objects-normal/i386/Test.o
 /Developer/Xcode/DerivedData/Master-fmkociodeqhkyofkkwdmsymbykyh/Build/Products/Debug-iphonesimulator/libTest.a(Test.o)
duplicate symbol _OBJC_CLASS_$_Test in:
 /Developer/Xcode/DerivedData/Master-fmkociodeqhkyofkkwdmsymbykyh/Build/Intermediates/Master.build/Debug-iphonesimulator/Master.build/Objects-normal/i386/Test.o
 /Developer/Xcode/DerivedData/Master-fmkociodeqhkyofkkwdmsymbykyh/Build/Products/Debug-iphonesimulator/libTest.a(Test.o)
ld: 2 duplicate symbols for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

这没有意义,因为文件名不是符号。请显示完整的链接器错误消息。使用日志更新您有两个重复的符号;
测试
abc
类。你不能有重复的符号,而且它与文件名无关,所以“如果我在库中更改文件名,它编译得很好”这句话不可能是真的,它与文件名有关。如果我从project或库中删除这些文件,我就不会再收到错误。另外,通过重命名文件,我的意思是使用重构>重命名来更改整个文件。因此,如果我在xcodeproject或库中重构并重命名文件,我将不再得到更合理的errorWell;重构不仅仅是重命名,你应该编辑你的问题来纠正它。然而,你想要实现什么?不能有同名的不同类。