我正在试着在我的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

当前回答

在尝试了所有东西之后,我终于发现,构建似乎并不总是一次又一次地包含所有细节。也许是为了加快进程…… 为了确保在设备上运行前包装完整,请先进行清洁:Shift-Cmd-K。 然后使用Cmd-B构建。 然后在你的设备上运行它。 一件容易的事。 向你们所有在那个地方的好人致以亲切的问候!

其他回答

在我的例子中,我的一个测试目标是工作的,但另一个不是。它给出了上面的错误与一个丢失的库或其他。我比较了两个测试目标的设置,发现其中一个缺少“测试主机”的配置,所以我从工作测试目标中复制了它,它修复了我破碎的测试目标!

我试着把所有答案通读一遍。(可能漏掉了一些) 但这是我的解决方案。可能对某人有帮助。 我刚刚在我的项目中创建了一个swift文件(void.swift)。当我添加这个文件时,它要求我创建一个桥接。我答应了。这是所有!它开始起作用了。 背景:我的项目是写在obj c.和我添加了FBSDK pods到我的项目。在那之后,我开始得到这个错误。

我通过删除派生数据来解决这个问题,这一次它工作正常。尝试Xcode 7.3.1GM

我在Xcode 13+上创建版本时也遇到了同样的问题。不得不把时间浪费在解决这个问题上。最后,我能够解决以下步骤的问题。

我在构建设置中的运行路径搜索路径中添加了一个新的发布条目->链接。

/usr/lib/swift

添加了这个功能后,我可以运行我的应用程序而不会崩溃!

你必须设置Runpath搜索路径为@executable_path/Frameworks,如下面的Build Settings截图所示:

如果你有任何Swift内置框架,那么你可以将Build Options embedded Content Contains Swift Code设置为YES。