簡體   English   中英

在 iOS 上構建 React 本機失敗 - 使用 Apple M1 芯片

[英]Building React native fail on iOS - using Apple M1 chip

我有一台新的 Mac,我按照安裝說明進行操作。

當我運行命令時:

npx react-native init ProjectName

我收到以下錯誤

** BUILD FAILED **

以下構建命令失敗:CompileC /Users/aghiadmonier/Library/Developer/Xcode/DerivedData/test-bbpkvpircnzzukgpgaaohkixdojw/Build/Intermediates.noindex/Pods.build/Debug-iphonesimulator/Flipper.build/Objects-normal/x86_64/ConnectionContextStore。 o /Users/aghiadmonier/Desktop/React/test/ios/Pods/Flipper/xplat/Flipper/ConnectionContextStore.cpp 正常 x86_64 c++ com.apple.compilers.llvm.clang.1_0.compiler(1 失敗)

我正在使用 Xcode 12.5

xCode 12.5 是這里的問題。 它似乎破壞了 react-native 構建。 這里提到了解決方案 - https://github.com/facebook/react-native/issues/31179#issuecomment-830184757

看起來你在 react-native 0.64

  1. 更新podfile以使用
use_flipper!('Flipper' => '0.75.1', 'Flipper-Folly' => '2.5.3')
  1. 更新package.json以使用
"react-native": "facebook/react-native#cf8a364767df830d7255339741350bb53ab1a68a"
  1. 運行npm install (或yarn
  2. 在 ios 文件夾中運行pod install ,清理並重建應用程序

只是為了我使用 Mac M1 船的信息,

當我執行 Flipper 命令時,出現此錯誤:

[!] Invalid `Podfile` file: unknown keywords: "Flipper", "Flipper-Folly".

 #  from /Users/aghiadmonier/Public/Projects/Awsom/ios/Podfile:24
 #  -------------------------------------------

你應該禁用下一行。

use_flipper!('Flipper' => '0.75.1', 'Flipper-Folly' => '2.5.3')

像這樣更新你的Podfile

 use_flipper!({ 'Flipper' => '0.91.1', 'Flipper-Folly' => '~> 2.6', 'Flipper-RSocket' => '~> 1.4' })

  post_install do |installer|
    installer.pods_project.targets.each do |target|
      target.build_configurations.each do |config|
        config.build_settings["ONLY_ACTIVE_ARCH"] = "NO"
      end
    end
    flipper_post_install(installer)
    react_native_post_install(installer)
  end

並在運行pod install之后

當您嘗試在 M1(Apple Silicon Chip)中使用以下命令創建項目時:

npx react-native init ProjectName

嘗試使用以下步驟構建:

  1. 打開終端並安裝rosetta
  2. 在終端中輸入“ softwareupdate — install-rosetta ”命令。
  3. 安裝完成后,go 到應用程序。
  4. 查找終端應用
  5. 右鍵單擊並在終端中制作一個重復的終端Rosetta 復選框
  6. 現在右鍵單擊重復的終端並單擊“獲取信息
  7. 您將看到帶有“ Open with Rosetta ”選項的復選框。 啟用它。
  8. 而已。 重命名您的 Rosetta 終端,以便您輕松識別它。
  9. 打開您的 Rosetta 終端並運行命令npx react-native init ProjectName
  10. 項目初始化完成后鍵入npx react-native start to start地鐵。
  11. 現在輸入命令npx react-native run-android運行到 Android
  12. 鍵入命令npx react-native run-ios以運行到 iOS。
  13. 項目初始化完成后,您也可以在 VS Code 中運行啟動運行命令。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM