首页 > 解决方案 > Xcode 10 存档应用程序无法在安装了 Xcode 9 或更早版本的 Mac 上运行:DYLD,[0x4] 符号丢失?

问题描述

崩溃日志是这样开始的:

Termination Reason:    DYLD, [0x4] Symbol missing

Application Specific Information:
dyld: launch, loading dependent libraries

Dyld Error Message:
 Symbol not found: __T0SiN
 Referenced from: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx/libswiftos.dylib
 Expected in: /Volumes/VOLUME/*/REDACTED.app/Contents/MacOS/../Frameworks/libswiftCore.dylib
in /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/macosx/libswiftos.dylib

我们的部署目标设置为 10.12。无论是否嵌入了 swift 库,崩溃日志都是相同的。下面是otool -L我们应用程序本身的输出:

/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 1555.10.0)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa (compatibility version 1.0.0, current version 23.0.0)
@rpath/Alamofire.framework/Versions/A/Alamofire (compatibility version 0.0.0, current version 0.0.0)
@rpath/KeychainAccess.framework/Versions/A/KeychainAccess (compatibility version 0.0.0, current version 0.0.0)
/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.200.5)
/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 1670.0.0)
@rpath/libswiftAppKit.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftCore.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftCoreData.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftCoreFoundation.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftCoreGraphics.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftCoreImage.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftDarwin.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftDispatch.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftFoundation.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftIOKit.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftMetal.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftObjectiveC.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftQuartzCore.dylib (compatibility version 1.0.0, current version 1000.11.37)
@rpath/libswiftXPC.dylib (compatibility version 1.0.0, current version 1000.11.37)

研究该主题导致https://github.com/sindresorhus/gifski-app/issues/12这似乎是一个非常相似的问题。我们的配置尝试@loader_path/../Frameworks没有奏效,并且那里的 git diff 没有用,因为许多文件已经被删除。

旧 Xcode 的任何想法或经验是一个问题,但仅在某些机器上?

标签: swiftxcodexcode10

解决方案


似乎是一个远景,但我有一个类似的问题,这对我有用。

构建设置 -> 始终嵌入 Swift 标准库 -> 是

在此处输入图像描述


推荐阅读