M1 Mac 反应原生 iOS 构建错误(在项目“Pods”的目标“RCT-Folly”中)

Ste*_*eve 9 macos xcode ios react-native

在 M1 Mac 上,使用npm 8.3.1&node 17.4运行时,npx react-native run-ios我收到 2 个错误:

The following build commands failed:
    CompileC /Users/Steven/Library/Developer/Xcode/DerivedData/HelloSteve-hghgfcwemhoaiacfwlophutqqzbh/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/RCT-Folly.build/Objects-normal/arm64/SysUio.o /Users/Steven/Documents/Projects/React\ Native/HelloSteve/ios/Pods/RCT-Folly/folly/portability/SysUio.cpp normal arm64 c++ com.apple.compilers.llvm.clang.1_0.compiler (in target 'RCT-Folly' from project 'Pods')
    CompileC /Users/Steven/Library/Developer/Xcode/DerivedData/HelloSteve-hghgfcwemhoaiacfwlophutqqzbh/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/RCT-Folly.build/Objects-normal/arm64/NetOps.o /Users/Steven/Documents/Projects/React\ Native/HelloSteve/ios/Pods/RCT-Folly/folly/net/NetOps.cpp normal arm64 c++ com.apple.compilers.llvm.clang.1_0.compiler (in target 'RCT-Folly' from project 'Pods')
(2 failures)
Run Code Online (Sandbox Code Playgroud)

这个答案flipper_post_install(installer)来看, Podfile 中不存在该行。

这个答案# use_flipper!()中,我在 Podfile 中注释掉,pod install然后运行npx react-native run-ios并收到类似的错误:

The following build commands failed:
        CompileC /Users/Steven/Library/Developer/Xcode/DerivedData/HelloSteve-hghgfcwemhoaiacfwlophutqqzbh/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/RCT-Folly.build/Objects-normal/arm64/SysUio.o /Users/Steven/Documents/Projects/React\ Native/HelloSteve/ios/Pods/RCT-Folly/folly/portability/SysUio.cpp normal arm64 c++ com.apple.compilers.llvm.clang.1_0.compiler (in target 'RCT-Folly' from project 'Pods')
(1 failure)
Run Code Online (Sandbox Code Playgroud)

在这里尝试了解决方案(注释掉Time.htypedef uint8_t clockid_t;中的行),但这也不起作用。

帮助表示赞赏。

qua*_*ynh 5

我也遇到过这个问题,但在 M1 Mac 上没有

我发现如果我在包含空格的文件夹中创建一个项目 Learning RN/NewProject,当我们运行 pod install 时会出现错误

我尝试删除文件夹名称LearningRN/NewProject中的空格,效果很好。


Fap*_*api 2

我在更新项目目标操作系统版本时遇到了类似的问题。

实际上,Xcode 会要求您更改不同软件包的目标操作系统版本,这会导致我不再找到 RCT 软件包。

因此,当 xcode 告诉您有一个很好的选项可以更改不同 pod 的目标设置时,请务必小心。要么一步步进行并尝试,要么保持原样,只要它正在构建和运行。

npm install然后pod install分别,arch -x86_64 pod install因为我也在 M1 上运行。

因为它可能也需要做一些事情,所以我还会在 xcode 中禁用arm64,您的项目在构建设置“排除的架构”下的目标构建阶段,并且仅安装带有arch -x86_64 pod install.