【问题标题】:dyld: Library not loaded: @rpath/libswiftCore.dylib problem with new Xcode (10.2)dyld:库未加载:@rpath/libswiftCore.dylib 新 Xcode (10.2) 的问题
【发布时间】:2019-03-26 12:26:44
【问题描述】:

引用的答案均无效。 Xcode 10.2 发生了一些新变化

无论我使用 Swift 4.2 还是 5,都会发生这种情况。

使用全新的未经编辑的命令行工具会立即发生。

您需要做的就是创建一个 MacOS 命令行工具,然后点击“运行”。

您会立即收到此错误。

到目前为止,我所做的一切都没有解决它。

【问题讨论】:

  • 您使用的是 macOS 10.4.3 吗?您是否安装(或更新)“Swift Runtime For Command Line Tools”?
  • 我在 10.14.3
  • 我已经运行了更新程序。我需要采取新的步骤吗?我去看看。
  • 阅读developer.apple.com/documentation/xcode_release_notes/… 中的第一段:“从 Xcode 10.2 开始,Swift 命令行工具需要 macOS 中的 Swift 库。 ...”
  • 太棒了!我认为这就是我需要做的(RTFM)。把它作为一个答案,我会给你做绿卡检查。谢谢!

标签: swift xcode macos


【解决方案1】:

来自Swift 5 Release Notes for Xcode 10.2

Swift 5 运行时支持命令行工具包

从 Xcode 10.2 开始,Swift 命令行工具需要 macOS 中的 Swift 库。从 macOS Mojave 10.14.4 开始,它们默认包含在内。在 macOS Mojave 10.14.3 及更早版本中,有一个可选包为 Swift 命令行工具提供这些运行时支持库,您可以从 More Downloads for Apple Developers 下载。如果您安装了此软件包的 beta 版本,请将其替换为发布版本。该软件包仅适用于 Swift 命令行工具,而不适用于具有图形用户界面的应用程序。

注意:

  • 如果您仍在使用 macOS 10.14.3,这是必要的。 macOS 升级到 10.14.4 后,Swift 运行时库由操作系统提供,使用 Xcode 5 创建的命令行工具无需安装“Swift 5 运行时包”即可运行。
  • 在带有 Xcode 10.2 的 macOS 10.14.3 上,您必须下载并安装 最新“Swift 5 运行时包”。您可能与 Xcode 10.2 测试版一起安装的较早软件包不起作用。
  • Xcode 10.2 beta 发行说明的早期版本建议添加用户定义的设置 SWIFT_FORCE_STATIC_LINK_STDLIB=YES 作为解决方法,这不再是必需的。

【讨论】:

  • 是的......仍然会发生。也许我需要升级到 10.14.4。我不知道那个版本是否已经发布了。我假设这些是我运行安装程序时安装的。我将重新启动 Mac。这通常可以解决这些类型的问题。
  • @LittleGreenViper:我已经在 10.14.4 上,所以我无法复制它。您是否从 3 月 25 日开始安装 Swift 5 Runtime 包?
  • 好的。做到了。谢谢!
  • 我已经更新到 10.14.4 但问题仍然存在。有什么解决方法吗?
  • 不知道为什么它在 10.14.4 之后仍然崩溃。 应该 在不安装新库的情况下工作。在任何情况下,您都需要安装“Swift 5 Runtime Support for Command Line Tools”DMG,而不是它下面的 DMG(它是在您第一次启动 Xcode 时安装的)。这仅对低于 0.4 的操作系统级别是必需的
【解决方案2】:

这个问题的发生是因为我将 XCode 更新到 10.2 而没有将 MacOS 更新到最新版本,并且我使用的 sdk 也没有更新。显然这些步骤解决了我的问题:

  1. 将您的 MacOS 更新到最新版本
  2. 就我而言,即使更新所有必需的更新也无法解决崩溃问题。在这种情况下,不要忘记检查您受影响的 SDK/框架是否已经从最新的 XCode (10.2) 重建,因为在我使用最新的 XCode (10.2) 重建 SDK 后问题就消失了。
  3. 就我而言,我们使用 jenkins 发布应用程序,如果云仍然使用旧的 xcode 和 os,.ipa 仍然会崩溃。还需要更新 jenkins cloud 上的 macos 和 xcode。
  4. 因为更新云会影响一切(接近发布日期),所以我要么回滚 os 和 xcode,要么使用旧的 sdk/框架(在重建状态之前)。但是使用第二个选项会使其在模拟器上崩溃,但如果发布应用程序至少不会出现崩溃问题。

【讨论】:

    【解决方案3】:

    我按照建议更新了我的 macOS,但如果没有对 Package.swift 进行以下更改,它并没有帮助:

    - // swift-tools-version:4.2
    + // swift-tools-version:5.0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-24
      • 2015-01-15
      • 2018-03-04
      • 1970-01-01
      • 2014-11-24
      • 1970-01-01
      相关资源
      最近更新 更多