关于ios:dyld:未加载库:@executable_path /../ Frameworks /

dyld: Library not loaded: @executable_path/../Frameworks/

错误:

dyld: Library not loaded: @executable_path/../Frameworks/n.framework/n
Referenced from: /Users/hunterp/Library/Developer/CoreSimulator/Devices//data/Containers/Bundle/Application//Demo.app/Demo
Reason: image not found

在这个StackOverflow问题中,我遵循了每个答案:iOS应用程序的框架在设备上崩溃,dyld:库没有加载,xcode 6测试版

下面是我的构建设置:enter image description here


我怀疑您的构建设置中还有其他错误,因为您的错误消息包含目录之间的无关斜杠。

1
2
/Users/hunterp/Library/Developer/CoreSimulator/Devices//data/Containers/Bundle/Application//Demo.app/Demo Reason: image not found
                                                      ^^                                  ^^

(当我格式化为代码时,突出显示的语法很好地指出了这一点;)

在搜索框架时,很可能当它进入一个目录(使用..)时,它正在解析那些//中的一个,而不是您所期望的那样。

我会检查您的头、框架和库搜索路径,查找不需要斜线的条目,尤其是引用$(BUILDDIR)/1或类似的条目。

1。我不记得实际的环境变量


  • 尝试选择可执行路径并按删除enter image description here

  • 也可以尝试使用库搜索路径和头搜索路径

  • 如果有两个目标,请尝试编辑POD文件:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    target :MainTarget, :exclusive => true do
    link_with ['Target1']

      pod 'SomePod'

    end

    target :SecondTarget, :exclusive => true do
    link_with ['Target2']

      pod 'SomePod'

    end
  • 在终端运行:pod更新

  • 同时将pods debug和release配置设置为none。enter image description here

  • 我认为是错误

    dyld: Library not loaded: @executable_path/../Frameworks/n.framework/n ...

    显示运行路径搜索路径设置为"@executable_path/../frameworks"。转到"构建设置"->"运行路径搜索路径",删除"@executable_path/..frameworks",如果存在,则添加"@executable_path/frameworks"。