在 M1 Machine Ventura13.3 中 - Xcode 14.3 构建错误,所有 Pod 框架上均出现未定义符号

Pra*_*abu 9 xcode ios apple-m1 xcode14.3 ios16.4

在 M1 Machine Ventura 13.3 - 安装了 Xcode 14.3 并尝试构建现有项目。

  1. 在构建时,所有 Pod 框架上都会出现 UnDefined Symbol 错误。

    构建错误

  2. 在 Xcode14.3 发行说明中,我在已弃用的部分中读到,它不再支持 Rosetta 配置,之前在 Xcode 14.2 中,我使用 Rosetta 选项启用了构建,并且已成功构建。

  3. 因此,我恢复到旧的 XCode 14.2 来发布我的待交付项目。在这种情况下,即使启用了 Rosetta 选项,使用模拟器进行构建也会遇到相同的问题,但在设备中,它已成功构建。

  4. 第二天,我尝试使用 Xcode 14.3 作为从苹果下载中下载的单独应用程序。构建项目时,我收到错误:缺少文件 libarclite_iphoneos.a (Xcode 14.3)

  5. 在 google 上,需要将 pod 库更新到最新的操作系统目标 11.0

    post_install 执行|安装程序| installer. generated_projects.each 执行 |project| project.targets.each 做 |target| target.build_configurations.each 执行 |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0' 结束结束结束结束

    关闭项目并在终端中运行pod install 。

  6. pod安装后,再次开始构建项目,并在弹出窗口中收到如下错误。

    弹出错误

    单击“了解更多”后,它会重定向到https://developer.apple.com/documentation/technotes/tn3117-resolving-build-errors-for-apple-silicon

  7. 我更新了链接中提到的构建设置中的架构。附件是 VALID_ARCHS 屏幕截图

    在此输入图像描述

  8. 当再次运行该项目时,出现相同的错误弹出窗口,这次我单击“Build for Rosetta”选项,项目成功构建。模拟器的名称更改为 Rosetta。

    在此输入图像描述

  9. 现在应用程序已成功构建并在 iOS 16.4 模拟器中运行。

如何在不使用 Rosetta 构建的情况下在 M1 机器上运行我的应用程序?在 14.3 中使用 Rosetta 构建应用程序是否正确?

Pra*_*abu 7

在错误弹出窗口中,提及您可以在产品 > 目标菜单中控制特定于体系结构的运行目标的可见性。

Xcode 构建错误

选择产品和目的地菜单时,显示如下图

在此输入图像描述

当选择show Both时,显示两个架构模拟器

在此输入图像描述