dyld:库未加载:@ rpath / libswiftCore.dylib

我正在尝试在iPhone 4上运行Swift应用程序。 它可以在模拟器上正常工作,我的朋友可以在他的iPhone 4s上成功运行它。 我有iOS 8和Xcode 6的正式版本。

我努力了

  • 重新启动Xcode,iPhone,电脑
  • 清洁和重建
  • 撤销并创建新的证书/配置文件
  • 运行路径搜索路径是$(inherited) @executable_path/Frameworks
  • 嵌入式内容包含Swift代码是'是'
  • 代码签名身份是开发人员
  • 以下是整体错误

    dyld: Library not loaded: @rpath/libswiftCore.dylib
      Referenced from: /private/var/mobile/Containers/Bundle/Application/LONGSERIALNUMBER/AppName.app/AppName
      Reason: no suitable image found.  Did find:
        /private/var/mobile/Containers/Bundle/Application/LONGSERIALNUMBER/AppName.app/Frameworks/libswiftCore.dylib: mmap() error 1 at
    address=0x008A1000, size=0x001A4000 segment=__TEXT in Segment::map() mapping
    /private/var/mobile/Containers/Bundle/Application/LONGSERIALNUMBER/APPLICATION_NAME/Frameworks/libswiftCore.dylib
    

    对我而言,以前的解决方案都没有奏效。 我们发现Build Settings中有一个“Always Embed Swift Standard Libraries”标志需要设置为YES。 这是默认的NO!

    Build Settings > Always Embed Swift Standard Libraries

    设置完成后,在再次构建之前清理项目。

    敏锐的读者一些解释最重要的部分是:

    请在您的应用中将嵌入式内容包含Swift代码(EMBEDDED_CONTENT_CONTAINS_SWIFT)构建设置设置为YES,如图2所示。此构建设置指定目标产品是否包含嵌入Swift代码的内容,它告诉Xcode将Swift标准库嵌入到您的应用中当设置为YES时。

    在这里输入图像描述

    该标志以前称为Embedded Content Contains Swift Code


    令人惊讶的是,我所做的只是“清理”我的项目 (shift + cmd + K),并且工作正常。 虽然似乎与证书有关。


    我在删除时开始出现此错误:

    @executable_path/Frameworks
    

    来自我的构建设置中的Runpath Search Paths 。 替换它再次固定一切(感谢善良的源代码控制!)

    我不知道它是如何到达那里的,但似乎需要一个二进制文件来找到它的嵌入式Swift运行时。

    链接地址: http://www.djcxy.com/p/49917.html

    上一篇: dyld: Library not loaded: @rpath/libswiftCore.dylib

    下一篇: Team provisioning profile