我正在试着在我的iPhone 4s上运行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

当前回答

在Xcode 8中,“嵌入式内容包含Swift代码”选项不再可用。

它已被重命名为“Always Embed Swift Standard Libraries = YES”

其他回答

我同时安装了多个版本的Xcode。这个框架是用更新版本的Xcode构建的。我尝试编译的应用程序使用的是较旧版本的Xcode。当我用相同版本的Xcode清理和编译框架和应用程序时,事情就正常了。

我开始得到这个错误时,我删除:

@executable_path/Frameworks

从跑道搜索路径在我的构建设置。替换它使一切重新恢复正常(感谢源代码控制!)

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

对我来说什么都没用,然后我做了下面这些步骤:

我从podfile中删除了flipper的使用情况。在我看来是这样的: use_flipper !({Flipper-Folly”= >“2.5.3”,“鳍”= >“0.87.0”,“Flipper-RSocket ' = > ' 1.3.1 '}) 我在我的项目中添加了一个swift文件来创建一个桥接头。

我使用的是Xcode 7.2。如果您尝试了以上所有方法,但错误仍然发生,请尝试从密钥链访问中删除旧证书!好不容易才解决这个问题。

这些解决方案似乎都不起作用,但当我将全球开发人员证书的权限更改为使用系统默认值时,它就起作用了。我在下面的链接中包含了步骤和截图

我鼓励你在苹果漏洞报告中登录,因为苹果真的应该解决这个巨大的错误: https://stackoverflow.com/a/41401354/559760