如何在使用 Rosetta 的 Mac 上解决“react-native”和 cocopods 的错误
Posted
技术标签:
【中文标题】如何在使用 Rosetta 的 Mac 上解决“react-native”和 cocopods 的错误【英文标题】:How do I troubleshoot an error with 'react-native' and cocopods on a Mac using Rosetta 【发布时间】:2021-06-24 06:45:35 【问题描述】:我正在尝试在带有应用芯片的新 Mac 计算机上执行一个反应原生项目。 按照某些论坛的建议,将终端更改为使用 Rosetta 打开
安装了cocoa pods 1.10.1版本 使用 NPM 14.16.0 和 react Native 版本 0.63.4 和 Xcode 版本 12.4 并尝试在 ios 文件夹中运行 pod install 命令。我收到以下错误。
错误
[!] An error occurred while processing the post-install hook of the Podfile.
undefined method `react_native_post_install' for #<Pod::Podfile:0x00000001572d90f8>
/Users/vvvvv/WebstormProjects/Reer/ios/Podfile:27:in `block (3 levels) in from_ruby'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-core-1.10.1/lib/cocoapods-core/podfile.rb:179:in `post_install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:897:in `run_podfile_post_install_hook'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:885:in `block in run_podfile_post_install_hooks'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/user_interface.rb:145:in `message'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:884:in `run_podfile_post_install_hooks'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:329:in `block (2 levels) in create_and_save_projects'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer/xcode/pods_project_generator/pods_project_writer.rb:61:in `write!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:328:in `block in create_and_save_projects'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:307:in `create_and_save_projects'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:299:in `generate_pods_project'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:178:in `integrate'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/installer.rb:166:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/claide-1.0.3/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.10.1/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'
感谢任何帮助。
【问题讨论】:
你能发布你的 Podfile 配置吗,好像你在安装后执行一个方法,它不是在 Podfile 中创建的 我在使用 Intel CPU Mac 时遇到了同样的问题。你解决了id吗?在另一个 0.63.4 版本的项目中,我可以构建应用程序,但当前的项目会引发与您相同的错误。 【参考方案1】:tldr:更新您的 react-native
版本以匹配您的 Podfile。
react_native_post_install
是在 "react-native": "0.64.0"
中引入的。
对我来说,我安装了 "react-native": "~0.63.4"
,但使用的是来自 0.64 新 reactive-native init
的 Podfile(复制/粘贴)。
我经历了将我的 expo 创建项目迁移到原始 react-native 的过程。
【讨论】:
我将 react-native 升级到 0.64.0 并且成功了,谢谢 升级到 0.64.0 后问题解决以上是关于如何在使用 Rosetta 的 Mac 上解决“react-native”和 cocopods 的错误的主要内容,如果未能解决你的问题,请参考以下文章
如何在 M1 Mac 上本地运行 Python 3.9.1?