【问题标题】:Build Failure: How can I resolve a React Native iOS virtual device app build failure, failing CompileSwift and CompileC?构建失败:如何解决 React Native iOS 虚拟设备应用构建失败、CompileSwift 和 CompileC 失败?
【发布时间】:2021-06-20 06:02:07
【问题描述】:

我的设置:

  • MacBook Pro(2011 年初)
  • macOS High Sierra(版本 10.13.6)
  • React Native (7.18.1)
  • XCode (10.1)
  • iOS 虚拟设备是 iPhone 8 - 12.1
  • 命令行工具(Xcode 10.1 (10B61))
  • 自制 (3.1.12)
  • 节点 (16.3.0)
  • 守望者(2020.8.17)
  • cocoapods (1.10.1)

我基本上是编程新手,刚开始学习 React Native。尝试在旧 MacBook Pro 上设置我的开发环境。

我在 React Native 站点上遵循https://reactnative.dev/docs/environment-setup 此处描述的过程。

我也一直在尝试从 Traversy Media https://www.youtube.com/watch?v=Hf4MJH0jDb4 做这个学习项目,但在指导我全局安装 react-native 时,我意识到 React Native 教程和 Traversy Media 教程冲突-cli。我相信我目前没有全局安装 react-native-cli,但我可能错了。

我可以通过终端成功启动应用程序(即将文件生成到文件夹位置)。但是在虚拟 iOS 设备上启动 iOS 项目构建时出现错误。

我调用项目的目录。

我跑:

npx react-native start
npx react-native run-ios

然后我得到:

error Failed to build iOS project. We ran "xcodebuild" command but it exited with error code 65.

...然后在终端窗口下很长一段路,经过很多我不明白的行,我被告知 CompileSwift 和 CompileC 命令失败:

** BUILD FAILED **


The following build commands failed:
    CompileSwift normal x86_64 /Users/[myusername]/Desktop/Dev/ShoppingList/ios/Pods/YogaKit/YogaKit/Source/YGLayoutExtensions.swift
    CompileC /Users/[myusername]/Library/Developer/Xcode/DerivedData/ShoppingList-drihumjcjrxnoqcutvskvcmaocen/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/Flipper-Folly.build/Objects-normal/x86_64/VirtualEventBase.o /Users/[myusername]/Desktop/Dev/ShoppingList/ios/Pods/Flipper-Folly/folly/io/async/VirtualEventBase.cpp normal x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler
(2 failures)

就像我说的,我对编程和 React Native 完全陌生,因此任何有关解决此环境设置问题的意见都会非常有帮助。

【问题讨论】:

    标签: ios c swift react-native


    【解决方案1】:

    需要 React Native 0.64 Xcode 12

    https://reactnative.dev/blog/2021/03/12/version-0.64

    【讨论】:

    • 不幸的是,对于这台旧 MacBook Pro,Xcode 10.1 是它可以运行的最新版本。我是否有能力使用这种旧设置编写和部署 React Native 应用程序?听起来 AppStore 甚至不接受来自 Xcode 12.0 版之前的构建?
    • 为了学习,你可以搜索版本 react native 与你的配置archive.reactnative.dev/versions 但你不能在 AppStore 中发布