dyld:未加载库:@rpath/libswiftCore.dylib 在 Xcode 更新后
dyld: Library not loaded: @rpath/libswiftCore.dylib after Xcode Update
我已经使用了一段时间的应用程序出现问题。一切都很好,直到发疯并将 Xcode 更新为 9.4(之前为 9.3)。
我正在使用在 swift 4.0.3 上编译的第三方框架。我工作得很好,但在更新后它无法编译(无法使用 4.1 构建在 4.0.3 上编译的框架)。我下载并安装了 Swift 4.0.3 Release Toolchain 并且我能够正确构建。
但是,当我 运行 设备上的目标 (iOS 9.0 ipad) 它因 dyld`dyld_fatal_error:
而崩溃
dyld`dyld_fatal_error:
0x1fe9008c <+0>: trap
0x1fe90090 <+4>: nop
控制台输出如下:
dyld: Library not loaded: @rpath/libswiftCore.dylib
Referenced from: /private/var/containers/Bundle/Application/2E966F50-67E3-4250-858C-382319CD6274/myApp.app/Frameworks/myFramework.framework/myFramework Reason: Incompatible library version: myFramework requires version
1.0.0 or later, but libswiftCore.dylib provides version 0.0.0
一些事实:
框架位于嵌入式二进制文件和Linked Frameworks and Libraries under General and Link Binaries with Libraries and 构建阶段下的嵌入框架。
此应用需要在 iOS 9.0 上部署,并相应地设置部署目标。
我重新安装了Xcode 9.3,但是我在使用4.0.3工具链时遇到了同样的问题。
我的怀疑:
工具链是否会以某种方式损坏?我安装了 Swift 4.0.3 Release 2017-12-05 (a)
即使我使用的是 4.0 工具链,我也只能在 Build Settings 的 Swift Compiler 下选择 4.1 和 3.3。我想这会被覆盖,但不确定。
我主要担心的是,即使部署目标设置为iOS9.0,BASE SDK下设置为11.3,也无法选择其他。我在互联网上找不到 9.0 SDK。这可能是问题所在吗?
此外,我所有的证书都有效并且没问题。
提前致谢,每次发现新内容时我都会添加编辑。
好吧,我在这里没有得到任何帮助,但以防万一有人需要知道,我设法解决这个问题的唯一方法是要求 更新版本的框架 我们正在使用。看来这是一个没有解决方案的兼容性问题。
按照@Danf 的说明为我解决了。
我已经使用了一段时间的应用程序出现问题。一切都很好,直到发疯并将 Xcode 更新为 9.4(之前为 9.3)。
我正在使用在 swift 4.0.3 上编译的第三方框架。我工作得很好,但在更新后它无法编译(无法使用 4.1 构建在 4.0.3 上编译的框架)。我下载并安装了 Swift 4.0.3 Release Toolchain 并且我能够正确构建。
但是,当我 运行 设备上的目标 (iOS 9.0 ipad) 它因 dyld`dyld_fatal_error:
而崩溃 dyld`dyld_fatal_error:
0x1fe9008c <+0>: trap
0x1fe90090 <+4>: nop
控制台输出如下:
dyld: Library not loaded: @rpath/libswiftCore.dylib
Referenced from: /private/var/containers/Bundle/Application/2E966F50-67E3-4250-858C-382319CD6274/myApp.app/Frameworks/myFramework.framework/myFramework Reason: Incompatible library version: myFramework requires version
1.0.0 or later, but libswiftCore.dylib provides version 0.0.0
一些事实:
框架位于嵌入式二进制文件和Linked Frameworks and Libraries under General and Link Binaries with Libraries and 构建阶段下的嵌入框架。
此应用需要在 iOS 9.0 上部署,并相应地设置部署目标。
我重新安装了Xcode 9.3,但是我在使用4.0.3工具链时遇到了同样的问题。
我的怀疑:
工具链是否会以某种方式损坏?我安装了 Swift 4.0.3 Release 2017-12-05 (a)
即使我使用的是 4.0 工具链,我也只能在 Build Settings 的 Swift Compiler 下选择 4.1 和 3.3。我想这会被覆盖,但不确定。
我主要担心的是,即使部署目标设置为iOS9.0,BASE SDK下设置为11.3,也无法选择其他。我在互联网上找不到 9.0 SDK。这可能是问题所在吗?
此外,我所有的证书都有效并且没问题。
提前致谢,每次发现新内容时我都会添加编辑。
好吧,我在这里没有得到任何帮助,但以防万一有人需要知道,我设法解决这个问题的唯一方法是要求 更新版本的框架 我们正在使用。看来这是一个没有解决方案的兼容性问题。
按照@Danf 的说明为我解决了。