升级到Xcode 15后,原先Xcode14可以编译的项目出现大量Duplicate symbols,且引用报错指向同一个路径(一般为Framework)下的同一个文件。经过查找相关解决,可通过
在Xcode -> Target -> Build Setting -> Other Linker Flags 添加一行"-ld64"
即可解决该问题
原因是Xcode15采用了新的链接器(Linker),被称作“ld_prime”。新的连接器有诸多好处,尤其是对合并库的支持方面,具体可以查看WWDC 2023 SESSION 10268 Meet mergeable libraries.。然而,链接器的升级可能会出现不兼容老库的情况出现。遇到这种情况,可以通过恢复旧的连接器来解决这个问题。从Other Linker Flags添加"-ld64"后,就会覆盖Xcode编译时选择的链接器,因此可以正常访问。
升级到Xcode15后,项目遇到Duplicatesymbols问题,通过在BuildSettings中添加`-ld64`解决,因新链接器ld_prime与旧库不兼容。WWDC2023提到的mergeablelibraries可能是原因。
833

被折叠的 条评论
为什么被折叠?



