代码之家  ›  专栏  ›  技术社区  ›  rhlsthrm

不兼容的库版本:AwaitKit需要1.0.0或更高版本,但libswiftcore.dylib提供0.0.0版本

  •  0
  • rhlsthrm  · 技术社区  · 6 年前

    我的应用程序在模拟器上运行得非常好。我试图将它加载到我的设备上(iPhone XS,iOS 12.1.2),Xcode中弹出一个窗口,说“无法启动myapp”,内部错误。

    我查看了window>设备和模拟器中的设备日志,看到了应用程序中的崩溃日志。在日志中,我看到一条消息:

    Exception Type:  EXC_CRASH (SIGABRT)
    Exception Codes: 0x0000000000000000, 0x0000000000000000
    Exception Note:  EXC_CORPSE_NOTIFY
    Termination Description: DYLD, Library not loaded: @rpath/libswiftCore.dylib | Referenced from: /private/var/containers/Bundle/Application/FFBD3A48-511D-48E6-A14B-C8207A7F2DCA/HackerNews.app/Frameworks/AwaitKit.framework/AwaitKit | Reason: Incompatible library version: AwaitKit requires version 1.0.0 or later, but libswiftCore.dylib provides version 0.0.0
    Triggered by Thread:  0
    

    我不知道为什么Swift核心lib版本会是0.0.0,这里看起来有点离谱。

    2 回复  |  直到 6 年前
        1
  •  1
  •   dengApro    6 年前

    使用多个Swift工具链。

    每次我们更新swift版本时,通常开源代码都没有更新和匹配。

    所以使用多个swift工具链来使用旧版本的swift。或者等待开源代码得到更新。


    转回,

    首先,去 swift.org

    然后,下载旧的swift版本

    00 安装包

    11

    在工具链中切换Swift版本

    22

    或在首选项/组件中切换swift版本

    33

        2
  •  0
  •   rhlsthrm    6 年前

    我发现我使用了错误的工具链,我需要使用xcode 1而不是swift 4.2。