iOS Xcode升级到14.3报错解决方案

1.如果你电脑开启了自动更新还是建议你先关闭掉吧。避免第一时间更新xcode出现不知名报错找不到解决方案

你可能遇到的报错问题:

1)Build service could not create build operation: unknown error while handling message: MsgHandlingError(message: "unable to initiate PIF transfer session (operation in progress?)")

2)library not found for -lXXX

3)library not found for -IPos-xxxx

4)打包报错

5)pods下product文件的二进制库无法编译,libffi寻址不到(静态库兼容问题14.3)

6)clang: error: linker command failed with exit code 1 (use -v to see invocation)

第一个报错信息很少见,多发生在xcode配置出错或xcode更新导致的环境变化。所谓环境变化就是xcode更新如果是覆盖式更新则好一些,如果是完全卸载式更新,也就是xcode所有的编译缓存都删除了,全部再次安装编译生成一遍新的编译缓存

上述错误就在于此

2013/10/25新增xcode15此类错误

1.Clean Xcode and Close Xcode

2.delete ~/Library/Developer/Xcode/DerivedData

Xcode 14.3版本移除了ARC相关的库,从而导致一些默认部署目标是iOS 8版本的第三方库出现报错。只要最低部署目标不低于iOS 9版本,运行项目时就不会去链接ARC相关的库,也就不会出现找不到库的报错。

导致在链接库的时候因为找不到静态库。这时候你就要去排查你的报错的文件中。其实和版本也不是有太大关系,而是只要你引用了低于ios11的库,这个库含有静态库.a文件则无法编译

解决方法:删除这个库的.a即可

比如我们引入了通知的extension,该库最低支持ios10.且包含.a静态库


如果你遇到上述错误,没必要删除pod的lock文件或pods文件不断尝试pod install或者关机重启,没有用!!!!,因为xcode14.3不再包含arc文件


系统已经内置有ARC相关的库,所以没必要再额外链接,至少Xcode 14支持的最低部署目标iOS 11及以上版本的系统肯定是没问题的。如果应用部署目标不低于iOS 11还出现问题,那么应该是第三方库的部署目标有问题。现在Xcode 14.3移除arc目录的原因已经很清楚,是因为支持的最低部署版本的系统都已经内置了ARC相关的库。如果应用最低部署目标版本本身不低于iOS 11,解决这个问题很简单,只需要将第三方库部署目标的iOS版本设置成和应用最低部署目标的iOS版本一致。应用最低部署目标是iOS 11.0版本

在Podfile文件中加上:

post_install do |installer|

  installer.pods_project.targets.each do |target|

    target.build_configurations.each do |config|

      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0'

    end

  end

end


如果必须支持老版本,你可以将未升级前的arc文件复制到Xcode 14.3



二  14.3可能遇到的打包错误


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容