MacOS设置 ReactNative iOS开发环境的常见问题解决方案
同一个坑不能摔两次
安装cocoapods时出错:Failed to build gem native extension.
Mac系统通常自带ruby,但是版本一般比较旧
ruby -v
# ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.x86_64-darwin22]
which ruby
# /usr/bin/ruby
解决方法
使用brew安装最新的ruby
brew install ruby
安装成功后,还需要如下改动:在${bash_profile}文件中追加如下内容。
# Ruby Start
export PATH="/usr/local/opt/ruby/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/ruby/lib"
export CPPFLAGS="-I/usr/local/opt/ruby/include"
# Ruby End
bash_profile取决于你所使用的bash工具,如果是oh-my-zsh
,那么路径应该是~/.zshrc
。
当然,也可以借助ruby版本管理工具,替换系统自带的ruby。
pod install时,Hermes引擎下载速度太慢的问题
手动下载安装
$ export HERMES_ENGINE_TARBALL_PATH=/${YOUR_PATH_TO_TAR_GZ}/react-native-artifacts-0.71.11-hermes-ios-debug.tar.gz
$ pod install
...
参考信息
Error installing cocoapods: Failed to build gem native extension
Invariant Violation: requireNativeComponent: “RNSScreenStackHeaderConfig” was not found in the UIManager
几个可能出错的地方:
- React Native 版本太老
- 项目依赖没有安装
- 安装问题(npm & pod)
可用的解决方法:
edit package.json to "react-native-screens": "^3.26.0"
delete node_modules & package-lock.json
delete Pods & Podfile.lock
npm cache clean --force
npm install
pod install
react-native run-ios --reset-cache