Xcode 4.5.1中的"找不到文件","链接器命令失败,退出代码为1"

Yuv*_*j.M 32 unit-testing linker-errors file-not-found ios

我正在开发一个现有的iOS应用程序,我必须为这个项目编写单元测试用例.它正在Simulator 6.0中构建和运行.每当我尝试测试项目时,它都会显示以下错误消息.我无法确定准确的错误.

id: file not found: /Users/Yuva/Library/Developer/Xcode/DerivedData/FlyApp-aexukpgtbathuadgxlnm/Build/Products/Debug-iphonesimulator/FlyApp.app/FlyApp
clag: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)

你能帮我解决这个链接器错误并测试应用程序吗?

小智 84

这个错误让我疯狂了1.30小时

我更改了产品名称并禁用了快照选项.然后突然出现这个错误.

错误是ld:找不到文件:.././ previousproductname.app/previousproductname

我跟着调试和修复的步骤

  1. 打开组织者删除了deriveddata,重启Xcode. - 没有解决

  2. 按照此链接的步骤http://twobitlabs.com/2011/06/adding-ocunit-to-an-existing-ios-project-with-xcode-4/ - 相同的错误,未解决.

  3. 最后更改了Scheme名称,删除了我的旧方案并添加了新的,解决了我的问题.

以上所有步骤均有效.

然后

  • 我遇到了同样的问题 - 创建一个新方案对我有用.XCode 6中的步骤转到PRODUCTS TAB然后转到SCHEME,然后转到MANAGE SCHEME PRESS减号,然后按+创建新方案. (18认同)
  • 创建一个适合我的新方案 (15认同)

aha*_*lls 35

我遇到了同样的错误消息.原来我已经重命名了我的应用目标,并且没有将测试目标,Build Settings,Bundle Loader设置更新为我的新应用名称.

有关此设置的更多详细信息,请参阅使用Xcode 4向现有iOS项目添加单元测试.我查看了相同的步骤,它帮助我在Xcode 5中修复了我的项目.

  • 重命名后我遇到了这个问题.在测试目标构建设置中更改`Bundle Loader`帮助我修复它. (2认同)
  • 仅供参考......在链接部分(Xcode 6.3.2)下的测试目标的构建设置中可用 (2认同)

hao*_*ang 18

删除您的方案,然后重新创建它(单击新图标或使用自动创建的xcode).这个对我有用.


Kul*_*eep 18

您必须更改了产品名称.由于您的工作区名称和产品(应用程序)名称不匹配,会发生此错误.

您只需将工作区名称替换为ProjectName-Tests target的TEST HOST Build设置中的产品(应用程序)名称,如图中所示.要赶上它,请选择ProjectName-Tests目标,选择Build Settings,搜索Test Host term.

在此输入图像描述

这是此错误的标准配置解决方案.

干杯!!


Eli*_*Eli 6

在xcode 6上你需要:

  1. 转到产品文件夹
  2. 单击文件.xctext
  3. 在"TARGETS"上选择测试
  4. 并在Host Application上选择您的应用程序.
  5. 点击构建应用.

适合我!


Owe*_*ett 0

您的链接器正在寻找以下位置的文件: /Users/Yuva/Library/Developer/Xcode/DerivedData/FlyApp-aexukpgtbathuadgxlnm/Build/Products/Debug-iphonesimulator/FlyApp.app/FlyApp

您是否按照路径确定该文件是否存在?请注意,FlyApp.app 可能是一个包,如果您从 Finder 中查看,则必须“查看包内容”。如果它不存在,则 1)您需要先构建 FlyApp.app,或者 2)您的测试代码中有一些依赖于它存在的内容,而这无法从您的问题中确定。