xcode 5.0.2 .app文件现在Red得到Apple Match-O Linker错误

时间:2014-05-08 21:44:33

标签: xcode ipad product .app

我最近将我正在处理的ipad项目移动到一个新文件夹,并认为我改变了所有内容以便运行。 显然不是。

我搜索了整个论坛,但没有一个答案似乎是问题。

当我清理应用程序时,它成功但无法运行。

Products文件夹中的我的.app文件现在是红色的。

这是我得到的错误,无法弄清楚发生了什么变化。

唯一的新事物是我用苹果更新了我的DEV帐户。 但是我的其他xcode项目都没有出现这个问题。

****我注意到我的项目名称和Build名称似乎不同。

我会在这里张贴图片,但似乎我不被允许。

错误代码:

Ld /Users/mo-ry/Library/Developer/Xcode/DerivedData/Prop_Tablet-czmhxyzuhrifndgzesduqempenjo/Build/Products/Debug-iphonesimulator/Prop\ Tablet.app/Prop\ Tablet normal i386
    cd "/Developer/Xcode 5.2 Projects/1 SUBMIT to App Store/Prop Tablet Blue_Green"
    setenv IPHONEOS_DEPLOYMENT_TARGET 5.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/mo-ry/Library/Developer/Xcode/DerivedData/Prop_Tablet-czmhxyzuhrifndgzesduqempenjo/Build/Products/Debug-iphonesimulator -F/Users/mo-ry/Library/Developer/Xcode/DerivedData/Prop_Tablet-czmhxyzuhrifndgzesduqempenjo/Build/Products/Debug-iphonesimulator -filelist /Users/mo-ry/Library/Developer/Xcode/DerivedData/Prop_Tablet-czmhxyzuhrifndgzesduqempenjo/Build/Intermediates/Prop\ Tablet.build/Debug-iphonesimulator/Prop\ Tablet.build/Objects-normal/i386/Prop\ Tablet.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=5.0 -framework UIKit -framework Foundation -framework CoreGraphics -Xlinker -dependency_info -Xlinker /Users/mo-ry/Library/Developer/Xcode/DerivedData/Prop_Tablet-czmhxyzuhrifndgzesduqempenjo/Build/Intermediates/Prop\ Tablet.build/Debug-iphonesimulator/Prop\ Tablet.build/Objects-normal/i386/Prop\ Tablet_dependency_info.dat -o /Users/mo-ry/Library/Developer/Xcode/DerivedData/Prop_Tablet-czmhxyzuhrifndgzesduqempenjo/Build/Products/Debug-iphonesimulator/Prop\ Tablet.app/Prop\ Tablet

Undefined symbols for architecture i386:
  "_main", referenced from:
      start in crt1.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

有人有任何想法吗?

1 个答案:

答案 0 :(得分:0)

Xcode项目只保存对文件路径的引用,并不代表项目目录的实际底层目录结构。了解这一点,您将能够解决人们对Xcode的许多问题。

在移动iPad项目之前,它对项目中文件的引用是正确的 - 移动后,引用不再正确。这是很多开发人员对Xcode的抱怨,它会导致很多问题。

您需要做的是在Xcode导航窗格中浏览项目中的每个文件,并检查它的文件引用位置是否与磁盘上的物理位置匹配。

我怀疑你的项目持有相对文件路径引用,当你移动它时它们不在相同的相对位置。

这是Xcode的一个区域,您可以在其中更改文件路径引用: Xcode File Identity and Type Pane(参考此SO答案:https://stackoverflow.com/a/19020652/76559

在回答您的特定错误消息时 - 链接器告诉您它无法找到main函数的符号。可能发生的是,在移动过程中,mian.m文件以某种方式从您的应用程序的目标中删除(您是否在尝试解决问题时创建了新目标并忘记将main.m文件添加到其中? / p>