我正在试着在我的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 7.2,一台设备上是iOS 9.2,另一台设备上是9.0。两人都犯了错误。不知道是什么改变导致了它,但上面的WWDR解决方案对我来说是正确的。安装证书,问题就解决了。

https://forums.developer.apple.com/message/43547 https://forums.developer.apple.com/message/84846

其他回答

对我来说,尝试了所有的方法都没有成功,有效的方法是从打包部分中删除@executable_path/Frameworks(不知道它最初是如何出现在那里的)

对于设备,您还需要将动态框架添加到项目的General选项卡中的Embedded binaries部分。

就我而言,

我设置了@executable_path/Frameworks

但是我还要设置框架搜索路径

$(PROJECT_DIR)/Frameworks

递归变化

这对我来说很管用。

下面这些步骤对我很有效:

单击项目名称(在导航器的最上方) 再次点击你的项目名称,(不是目标) 单击“生成设置”选项卡 搜索跑道搜索路径 将其值更改为$(inherited)标志(删除@executable_path/Frameworks)。

当升级Xcode(并随后升级到新版本的Swift)时,如果你的项目使用了用旧版本/以前版本的Swift构建/编译的框架,也会导致此错误消息。

在这种情况下,重新构建框架并重新添加它将解决问题。