首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Xcode14在启动时崩溃: dyld:库未加载:/usr/lib/swift/libSwitCoreGraphics.dylib

Xcode14在启动时崩溃: dyld:库未加载:/usr/lib/swift/libSwitCoreGraphics.dylib
EN

Stack Overflow用户
提问于 2022-09-20 07:41:15
回答 3查看 1.8K关注 0票数 3

当我将我的Xcode升级到14时,我的应用程序崩溃了,并得到了一条错误消息:dyld:库未加载:

它只发生在iOS版本低于13的设备上,比如iOS 12/11,

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-09-20 11:15:18

很可能是Xcode 14和更旧的iOS版本设备之间的互操作性问题。在GitHub问题中,它已被多次报道。查看苹果开发者论坛中的这个职位

所以解决方案:libSwiftCoreGraphics.tbd添加到项目的Frameworks,Libraries,and Embeded Contents中。

如果您使用的是豆荚或SPM,也请检查作者的更新。例如,5天前,SnapKit刚刚把他们的文件放在翘起

票数 1
EN

Stack Overflow用户

发布于 2022-09-24 04:41:50

按照https://developer.apple.com/forums/thread/714795的说法,苹果建议在链接器标志中添加-Wl,-weak-lswiftCoreGraphics

问题是,如果没有这个标志,你的应用程序就会期望libswiftCoreGraphics.dylib/usr/lib/swift/libswiftCoreGraphics.dylib上打电话。因为在旧版本的iOS版本中不存在dylib,所以您将得到类似的错误

代码语言:javascript
复制
EXC_CRASH (SIGABRT)
Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note:  EXC_CORPSE_NOTIFY
Termination Description: DYLD, Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib 

添加该标志会告诉链接器将此库视为弱链接器标志。在启动(或加载)时,将相对于@rpath搜索dylib,而不是硬编码的/usr/lib/swift路径。

您可以了解更多关于rpath的知识,以及如何帮助dyld找到dylibs 这里

在应用程序上运行otool -L之后,我看到很少有更多的库指向它们的/usr/lib/swift版本,但它们都是引用,例如,

代码语言:javascript
复制
    /usr/lib/swift/libswiftCoreMIDI.dylib (compatibility version 1.0.0, current version 6.0.0, weak)
    /usr/lib/swift/libswiftCoreML.dylib (compatibility version 1.0.0, current version 1436.0.14, weak)
    /usr/lib/swift/libswiftDataDetection.dylib (compatibility version 1.0.0, current version 723.0.0, weak)
    /usr/lib/swift/libswiftFileProvider.dylib (compatibility version 1.0.0, current version 730.0.125, weak)
    /usr/lib/swift/libswiftOSLog.dylib (compatibility version 1.0.0, current version 4.0.0, weak)
...

在添加链接器标志之前,唯一具有非弱引用的库是libswiftCoreGraphics

代码语言:javascript
复制
/usr/lib/swift/libswiftCoreGraphics.dylib (compatibility version 1.0.0, current version 120.100.0)

添加链接器标志后,它显示为:

代码语言:javascript
复制
@rpath/libswiftCoreGraphics.dylib (compatibility version 1.0.0, current version 15.0.0, weak)
票数 2
EN

Stack Overflow用户

发布于 2022-10-26 06:57:07

对于Xcode14.1 RC 2,这个问题已经解决了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73783158

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档