获取"库未加载:@ rpath / libswiftSwiftOnoneSupport.dylib"错误

时间:2017-02-20 17:29:17

标签: xcode git-submodules

当我将Nimble添加为git子模块时出现问题。我在issue上发了Quick/Nimble,但问题似乎不太可能是敏捷问题,可能是Xcode问题,因此我在这里问。

我根据Nimble安装指南建立了一个简单的项目,现在就在github。基本上我创建了xcworkspacexcodeproj(添加到工作区)。 Nimble作为git子模块和子项目添加到工作区。然后我将Nimble.framework添加到我的测试目标Build Phases并编写了一些简单的测试代码来查看Nimble是否正在运行。

当我运行测试时,Xcode给出了以下错误消息:

2017-02-20 23:41:29.482 xctest[52165:616190] The bundle “MainProjTests” couldn’t be loaded because it is damaged or missing necessary resources. Try reinstalling the bundle.
2017-02-20 23:41:29.483 xctest[52165:616190] (dlopen_preflight(/Users/nandiin/Library/Developer/Xcode/DerivedData/NimbleIssue-fkhppktoktwpjodtarmzrjobszwv/Build/Products/Debug-iphonesimulator/MainProjTests.xctest/MainProjTests): Library not loaded: @rpath/libswiftSwiftOnoneSupport.dylib
  Referenced from: /Users/nandiin/Library/Developer/Xcode/DerivedData/NimbleIssue-fkhppktoktwpjodtarmzrjobszwv/Build/Products/Debug-iphonesimulator/Nimble.framework/Nimble
  Reason: image not found)
Program ended with exit code: 82

我尝试过一些我发现类似问题的解决方案但他们没有工作:

  • Embed Asset Packs In Product Bundle设置为YES(针对主要目标和测试目标进行了尝试)
  • Always Embed Swift Standard Libraries设置为YES(针对主要目标和测试目标进行了尝试)

1 个答案:

答案 0 :(得分:0)

问题是动态库的运行路径:

libswiftSwiftOnoneSupport.dylib

如果在构建应用后,应用套件中未包含此内容,则您需要将其添加到Copy Files Build Phase中来添加它。另一个可能的问题可能是它的运行路径未正确设置(如果尚未设置,则需要设置),或使用rpath修复install_name_tool

Run-Path Dependent Libraries