2014-02-26 35 views
6

我无法编译我的模拟器项目。
我得到Apple Mach-O-Linker错误。我无法理解如何解决这些问题。我正在使用xcode 5.0.1。
请帮助我的任何机构。
在此先感谢。如何解决ios7&Xcode 5.0.1中的Mach-O-Linker错误

Ld /Users/murthych/Library/Developer/Xcode/DerivedData/ClassifiedDetails-elseirogpshyhmffphsiejgydphd/Build/Products/Debug-iphonesimulator/ClassifiedDetails.app/ClassifiedDetails normal i386 
    cd /Users/murthych/Desktop/ClassifiedDetails 
    setenv IPHONEOS_DEPLOYMENT_TARGET 7.0 
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.0.sdk -L/Users/murthych/Library/Developer/Xcode/DerivedData/ClassifiedDetails-elseirogpshyhmffphsiejgydphd/Build/Products/Debug-iphonesimulator -F/Users/murthych/Library/Developer/Xcode/DerivedData/ClassifiedDetails-elseirogpshyhmffphsiejgydphd/Build/Products/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -filelist /Users/murthych/Library/Developer/Xcode/DerivedData/ClassifiedDetails-elseirogpshyhmffphsiejgydphd/Build/Intermediates/ClassifiedDetails.build/Debug-iphonesimulator/ClassifiedDetails.build/Objects-normal/i386/ClassifiedDetails.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=7.0 -framework XCTest -framework CoreGraphics -framework UIKit -framework Foundation -Xlinker -dependency_info -Xlinker /Users/murthych/Library/Developer/Xcode/DerivedData/ClassifiedDetails-elseirogpshyhmffphsiejgydphd/Build/Intermediates/ClassifiedDetails.build/Debug-iphonesimulator/ClassifiedDetails.build/Objects-normal/i386/ClassifiedDetails_dependency_info.dat -o /Users/murthych/Library/Developer/Xcode/DerivedData/ClassifiedDetails-elseirogpshyhmffphsiejgydphd/Build/Products/Debug-iphonesimulator/ClassifiedDetails.app/ClassifiedDetails 

的Mach-O-链接错误信息

building for iOS Simulator, but linking against dylib built for MacOSX file '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/XCTest.framework/‌​XCTest' for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation) " 
+0

您可以编译而不运行该项目吗? – Tander

+1

您是否有任何静态库包含仅支持iOS设备?你还可以确保包含所有必需的框架? – user2071152

+0

任何机构都可以帮助我。我打了这个............ – user3222991

回答

13

XCTest.framework仅需要连接到单元测试目标在您的项目。它不应该添加到UI应用程序目标中。

我发现是添加XCTest.framework Xcode的增加时额外\Framework Search Paths

\"$(SDKROOT)/Developer/Library/Frameworks\" 
\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\" 
$(DEVELOPER_FRAMEWORKS_DIR) 

enter image description here

这会导致连接问题,

ld: building for iOS Simulator, but linking against dylib built for MacOSX file '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/XCTest.framework/XCTest' for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

要解决的XCode 5.1转到这个问题主ProjectWindow,标签构建设置 - >第搜索路径 - >框架搜索路径和编辑删除\出现的路径。

希望有帮助!

+0

Arrrrg!这已经让我过去了。我最近开始研究一个旧项目,它又发生了!我知道修复很简单,但只是忘了它是什么。你是一个GODSEND! – Patricia

0

我建议你使用Xcode的5.02稳定版,然后希望这些MAC-O链接错误,将是我面临过前resolved.same问题安装xcode 5.02。

+1

有对于不具有的XCode的版本做了链接错误一百个不同的原因。虽然xCode的版本肯定有可能是链接器错误的根源,但还有很多其他合理的解释应该首先排除。也就是说,Irfan是对的,无论如何你都应该升级到5.0.2。 –

+0

这是不正确的。我也遇到了最新的Xcode 5.0.2的这个问题。检查我的答案的解决方案。 – Amar

+1

@Amar不存在导致Mac-O Linker错误的一个原因,还有很多其他原因。在我的情况下,它通过更新xcode来解决,在你的情况下,它解决了你在答案中提到的问题。我仍然确信会有许多其他原因导致Mac-O Linker错误,如上面提到的ryan cumley。 – Irfan

2

删除测试目标,创造一个新的,然后复制测试过可以解决这个问题。

如果你投票,请提供一个有效的理由,因为这个提示为我工作。

相关问题