macOS安装 cocoapods1.9.1失败Failed to build gem native extension

最近团队内升级cocoapods到1.9.0。原本我简单的以为执行sudo gem install cocoapods 来更新。万万没想到。
执行多次都是:ERROR: Error installing cocoapods: ERROR: Error installing cocoapods:

Building native extensions. This could take a while...
ERROR: Error installing cocoapods:
ERROR: Failed to build gem native extension.

通过各方搜索得出以下结论
Ruby版本过低目前cocoapods依赖的ruby版本高于macOS自带的Ruby版本,需要手动升级ruby。(我的电脑版本Mojava macOS 10.14.6)
安装cocoapods的条件 Xcode -> Homebrew ->rvm -> ruby -> Cocoapods(rvm是管理Ruby版本的工具)
当我准备升级ruby时,终端执行rvm --version发现 命令找不到,猜想可能是ruby是系统自带(提醒不要删除系统自带的ruby支持,否则你怎么死的都不知道),没有通过rvm安装。接下来我准备安装rvm时,发现Homebrew当前版本又不符合要求。所以就进行了整条线升级。

Homebrew升级失败

  1. 通过brew update失败, 我是通过brew upgrade 成功升级
  2. 如果brew upgrade也失败,建议你卸载重装

rvm不存在

通过终端命令rvm -v准备查看rvm版本,发现命令找不到。那本地就没有安装咯。
那就安装咯

curl -sSL https://get.rvm.io | bash -s stable

等待几分钟,完成后
载入rvm环境

 source ~/.rvm/scripts/rvm

通过rvm -v查看是否安装成功

rvm -v
rvm 1.29.9 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

安装Ruby环境

查看一致ruby版本

rvm list known

安装目标版本

rvm install ruby-版本号

安装过程一般需要等比较久,如果此步骤失败,请检查homebrew是否可以升级,请升级最新的。
指定为系统默认ruby版本

rvm use 2.6 --default

由于默认源不可用,所以需要切换为国内的https://gems.ruby-china.com/

// 移除 rubygems.org
gem source -r https://rubygems.org/
//更新为ruby china
gem sources -a https://gems.ruby-china.com/

升级Cocoapods

在确保ruby 为2.6版本之后,可以通过rvm list查看

rvm list
 * ruby-2.6.3 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

即可执行sudo gem install cocoapods升级Cocoapods到1.9.0。当然你有可能只需要处理上面中任意一种情况就可以升级了。比如只需要升级ruby。

重启终端pod --version变为原来版本

在安装完Ruby之后,我查看了升级pod成功为1.9.1后,之后关闭终端,pod版本又变回1.8.4。怎么回事了?
查看ruby 版本,发现使用的是1点几,又回去啦?
后来发现重启终端之后会使用系统自带的Ruby环境,自然pod也是之前版本。
在参考了每次打开终端,当前使用的 ruby 版本会变回系统版本,设置了 default 好像也没什么作用,如何解决mac 10.8 下默认 ruby 版本问题之后依然无效。
所以直接在用户目录下的.bash_profile添加rvm use 2.6 --default来保证每次启动的终端Ruby环境都是使用rvm的2.6,而不是系统自带ruby.

参考

Cocoapods1.9.0 cannot install on Mojava 10.14.6–github-issues
Installing cocoapods on macOS Mojava --apple.stackexchange 提供解决方案
mac安装Cocoapods遇到的问题和解决办法 全套解决办法
MAC_Ruby安装 安装rvm和ruby

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值