2013-04-09 80 views
9

当试图编译我的项目时,我收到这个错误,想知道是否有人知道如何解决它?.app文件找不到衍生数据

我已阅读所有有关这种链接器错误的SO和其他地方的答案。我已经尝试了很多解决方案,其中包括xcode中非常受欢迎的--delete派生数据,完全退出xcode,在命令行上再次删除它,然后重新启动xcode - 仍然没有任何结果。这是在我尝试将设备附加到我的计算机(我从组织者中删除)后尝试在iPad上运行它的朋友之后开始的。我在我的智慧结束,不能再浪费时间了。任何想法如何解决它?

Products文件夹中的应用程序文件为红色。

编辑:更多信息:实际的应用程序没有被构建并放入库/开发人员/ {app}/Build/Product文件夹中。我尝试重新连接设备并从苹果网站手动添加配置文件,然后尝试在设备选中时进行Build->存档应用。我仍然得到错误。我试过在调试中改变调试版本并完成所有这些,但我仍然遇到了错误。我尝试卸载xcode并重新安装它,删除完全离开计算机的应用程序(包括派生数据)从Git拉下来,我得到相同的错误。

Ld /Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Products/Debug-iphonesimulator/UnitTests.octest/UnitTests normal i386     cd /Users/mischabuckler/Desktop/Git/TRx     setenv IPHONEOS_DEPLOYMENT_TARGET 6.1     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 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk -L/Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Products/Debug-iphonesimulator -F/Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Products/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.1.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -filelist /Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Intermediates/TRx.build/Debug-iphonesimulator/UnitTests.build/Objects-normal/i386/UnitTests.LinkFileList -bundle_loader /Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Products/Debug-iphonesimulator/TRx.app/TRx -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=6.1 -framework SenTestingKit -framework UIKit -framework Foundation -o /Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Products/Debug-iphonesimulator/UnitTests.octest/UnitTests

ld: file not found: /Users/mischabuckler/Library/Developer/Xcode/DerivedData/TRx-clxlusutxvcrlkddtqwtoxibcmhc/Build/Products/Debug-iphonesimulator/TRx.app/TRx clang: error: linker command failed with exit code 1 (use -v to see invocation)

+0

不知道你的问题是什么。你想做什么? – 2013-04-09 01:08:29

+0

对不起,我会编辑的问题更清楚。 – dwf 2013-04-09 01:09:15

+0

您是在尝试构建测试目标还是应用目标? – 2013-04-09 03:28:44

回答

4

因此,对于其他人谁发现这一点,是失意什么我落得这样做删除了我的两个应用程序的目标依赖和单元测试,然后一旦构建应用程序,然后重新添加和构建应用程序再次,它运行良好。

+0

同样的错误,感谢 – 2014-10-18 12:22:52

+0

很大的帮助应用目标 – Boon 2014-11-21 17:14:27

+2

没有对活像我。 – 2014-12-16 12:55:34

25

当您重命名主目标并且测试目标尚未更新时,会发生这种情况。检查测试目标中的构建设置,并确保路径指向新文件夹。例如,如果您将目标SuperAwesome重命名为Super,则测试目标需要SuperAwesome.app/文件夹中的文件,当它应该更新为Super.app/

+0

不存在目标相关谢谢:d - 铅解决大量的使用这种以及 – 2015-02-18 07:32:27

+6

要解决此问题的其他问题对我来说,我不得不进入测试目标,然后构建设置链接类别,并删除路径在调试和发布中引用。这些路径被重命名 – user1233894 2015-03-11 03:49:25

+0

我面临同样的问题,它实际上是给了一个错误的错误。应用程序之前,指向旧的目标。不过,我似乎无法找到生成设置编辑路径参考:我发现他们的测试下生成设置 – Matt 2015-04-10 05:05:08

5

好的,这个线索虽然很难找到,但是上面发布的消息不是构建应用的消息,而是您的单元测试。它也在输出窗口的顶部提到它,但不期望改变。

你可能已经重命名了你的方案,并且这样做的单元测试指向你的真实构建或其他东西。你的应用程序可能实际上已经建好,但它的单元测试目标失败了。

如果问题在于您在UnitTest方案中重命名了目标,请转到构建设置并搜索TEST,这会显示TEST HOST的设置。确保这些值指向您希望调用测试应用程序的任何内容,而不是主要的可执行文件。

对我来说,这仅仅是在我的测试目标的TEST_HOST的调试&版本设置上追加“测试”的情况。这一切都为我现在建立,虽然令人讨厌的是它实际上构建了两个目标 - 至少他们都编译。

+0

感谢@马特你的答案帮助了我。 +1。 – 2014-12-05 18:43:34

4

尝试复制目标,并使用目标副本运行。

1

进入项目 - >构建设置 - >测试 - >测试主机 删除测试主机中的所有路径,并做一个干净的构建。

2

我讨厌Mach-o链接器错误,它令人沮丧,无论如何,我通过创建一个新的方案面临同样的问题,它对我来说就像魔术一样工作。 Adding new scheme

0

尝试运行清理,然后建立/运行项目

enter image description here