搭建react-native环境,0.60 及以上版本依赖CocoaPods安装,在安装cocoapods过程中遇到了一系列问题,各种报错,查了很多资料,终于安装成功。总结一下,安装过程中遇到的问题和解决方法。
1.Command `yarn add react-native — exact` failed
node -v v6.17.1
发现之前切项目将 node 切到了低版本忘记了切回来,这个问题是由于 node 版本过低导致的。
nvm alias default v12.3.1 default -> v12.3.1
然后再执行
npm install -g yarn react-native-cli
,安装成功!
2.安装CocoaPods,报错如下:
Cloning into '/var/folders/jt/16x8dd9x18bbrq6nx_pk4kpw0000gn/T/d20191208-2243-al48i3'... error: RPC failed; curl 18 transfer closed with outstanding read data remaining fatal: the remote end hung up unexpectedly fatal: early EOF fatal: index-pack failed
Cloning into 'master'... remote: Enumerating objects: 354, done. remote: Counting objects: 100% (354/354), done. remote: Compressing objects: 100% (344/344), done. error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54 fatal: the remote end hung up unexpectedly fatal: early EOF fatal: index-pack failed
解决方案一:
cd ./项目目录/ios && pod install
,该解决方案无效,报错依然在。
解决方案二:
移除默认的源:
gem sources -a https://gems.ruby-china.com/
查看源:
gem sources -l
确保只有:gems.ruby-china.com
卸载:
sudo gem uninstall cocoapods
重新安装:
sudo gem install cocoapods
解决方案三:
git config --global http.postBuffer 114288000 git config --list
安装完成,执行
pod setup
没有任何返回,说是cocoapods > 1.8.0以上的版本有问题,返回到1.7.5版本,
移除重新安装。
sudo gem uninstall cocoapods sudo gem install cocoapods -v 1.7.5 pod setup
参考解决方案:https://github.com/flutter/flutter/issues/41253
3.repo master does not exist
pod setup不成功导致的,第二个问题解决了,这个问题就不会出现了。
Mac OS X 10.11之后执行命令
sudo gem install -n /usr/local/bin cocoapods
三、pod setup一个错解决了另一个错又出现了,要不就是卡死下不下来依赖。
error: RPC failed; curl 56 LibreSSL SSL_read: SSL_ERROR_SYSCALL, errno 54
解决方案一:
gem sources --remove https://rubygems.org/ gem sources --add https://gems.ruby-china.com gem sources -l
无效!
解终解终的解决方案:
放弃安装 0.61 和 0.44.3 以上的版本,选择安装
react-native init myApp --version 0.44.3 react-native run-ios
终于可以成功跑起RN。
狗血又无语,折腾十几个小时,根本没有成功安装cocoapods,无奈只要用低版本的react-native。
无语问苍天,只好默默泪流!