XCode14在iOS12及以下系统运行直接崩溃:libswiftCoreGraphics image not found

XCode14在iOS12及以下系统,运行报错:

dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib
  Referenced from: /private/var/containers/Bundle/Application/EA264FCE-85E5-431D-A01D-C38969679F87/CMKit_Example.app/Frameworks/LSBase.framework/LSBase
  Reason: image not found

解决方案:

  • 查看报错是项目本身报错还是依赖的第三方库报错
  • 1、项目本身报错:在项目的target -> Build Phases -> Link Binary With Libraries中添加:libswiftCoreGraphics.tbd
  • 2、pod第三方库报错:SnapKit,更新至最新的SnapKit版本即可
  • 3、pod第三方库报错:HandyJson,Pod Project找到SnapKit Target,Build Phases -> Link Binary With Libraries中添加:libswiftCoreGraphics.tbd(如果git没有提交pod目录的话,不适合这种修改方案
  • 4、pod第三方库报错:直接fork该第三方库、或制作私有pod库,引用该第三方库的framework,在spec文件添加如下代码
 s.libraries = 'swiftCoreGraphics'

  s.xcconfig = {
      'LIBRARY_SEARCH_PATHS' => '$(SDKROOT)/usr/lib/swift',
  }

所有pod第三方库报这个错,都可以参照2、3、4来解决,先看看第三方库作者有没有更新,再看看有没有提交pod文件夹,提交了就直接改Target配置,简单快捷,再不行就自己用方法4改

另附苹果开发者论坛提供的解决方案,我试了一下,对我们项目没效果:https://developer.apple.com/forums/thread/714795

另HandyJson作者已不再推荐使用HandyJson且该库已经很久没更新了,如果是HandyJson库报这个错,建议直接移除HandyJson库,采用其他库或系统方法代替,Issue链接:https://github.com/alibaba/HandyJSON/issues/466

你可能感兴趣的:(XCode14在iOS12及以下系统运行直接崩溃:libswiftCoreGraphics image not found)