当前位置: 首页 > article >正文

mac电脑安装cocoapods出错,以及安装最新版本ruby方法

macbook安装cocoapods时碰到一个报错:大概率是ruby的版本太低导致的

sudo gem install cocoapods
ERROR:  Error installing cocoapods:
ERROR: Failed to build gem native extension.
...
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

出现这种情况,大概率是我电脑 ruby 的版本太低了,导致不能安装最新的CocoaPods

安装flutter的环境参考官方文档:Start building Flutter native desktop apps on macOS - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter

那不安装最新 CocoaPods ,指定一个低版本是否可行呢?参考 Mac Flutter环境配置 — CocoaPods not installed解决方案。

sudo gem install cocoapods -v 1.8.4

使用如上命令确实安装成功了,但在 Flutter 中启动 Xcode 就会报错,启动失败。

Warning: CocoaPods minimum required version 1.9.0 or greater not installed. Skipping pod install.

根据以上,提醒我们需要一个至少 1.9 版本的 CocoaPods,那我卸载然后继续安装 1.9 版本是否就可以了呢?

# 卸载
sudo gem uninstall cocoapods

sudo gem install cocoapods -v 1.9.4

我尝试后,发现又安装失败。所以现在的情况就只有一个办法,升级 ruby

使用 homebrew 安装新版本 ruby:

brew install ruby

会在安装完后提示两个路径:将这两个路径复制到你的命令行,重新执行一下 

 

我们配置新安装ruby的环境变量,不用多想,按照提示来(不要复制如下路径,复制你终端提示的命令)

echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> /Users/**/.bash_profile

export LDFLAGS="-L/usr/local/opt/ruby/lib"
export CPPFLAGS="-I/usr/local/opt/ruby/include"

export PKG_CONFIG_PATH="/usr/local/opt/ruby/lib/pkgconfig"

source /Users/**/.bash_profile

就可以看到版本最新了:
 

再安装 cocoapods,如果之前有安装记得先卸载(卸载命令上面有):

# 卸载
sudo gem uninstall cocoapods

# 安装
sudo gem install cocoapods

就会提示安装成功了: 

 

如果上面安装后运行项目还提醒没有安装 cocoapods not installing,那就这样做:

sudo gem uninstall cocoapods
sudo gem install -n /usr/local/bin cocoapods

 


http://www.kler.cn/news/234923.html

相关文章:

  • 13 年后,我如何用 Go 编写 HTTP 服务(译)
  • 解决 postman测试接口报404 Not Found
  • 第十五届蓝桥杯全国软件和信息技术专业人才大赛个人赛(软件赛)软件测试组竞赛规则及说明
  • Excel——重复项处理
  • C语言实现一个简易的环形FIFO
  • 跟着GPT学设计模式之原型模式
  • Java图形化界面编程——弹球游戏 笔记
  • jvm体系结构
  • 电力负荷预测 | Matlab实现基于LSTM长短期记忆神经网络的电力负荷预测模型(结合时间序列)
  • Vue源码系列讲解——虚拟DOM篇【一】(Vue中的虚拟DOM)
  • 登录报下面错误The remembered identity will be forgotten and not used for this request
  • 2024.02.11作业
  • FPGA_简单工程_VGA显示驱动器
  • 机器学习系列——(十三)多项式回归
  • openssl3.2 - exp - RAND_bytes_ex
  • 【Linux】信号保存与信号捕捉处理
  • ubuntu20安装mongodb
  • opencv C++ dnn模块调用yolov5以及Intel RealSense D435深度相机联合使用进行目标检测
  • [office] excel如何计算毛重和皮重的时间间隔 excel计算毛重和皮重时间间隔方法 #笔记#学习方法
  • 牛客——递归实现组合型枚举(枚举,dfs)
  • 浅谈人工智能之深度学习~
  • CPP项目:Boost搜索引擎
  • 【并发编程】原子累加器
  • 企业飞书应用机器人,使用python发送图文信息到群
  • SpringCloud-Eureka服务注册中心测试实践
  • CSS 2D转换 3D动画 3D转换
  • ###C语言程序设计-----C语言学习(12)#进制间转换,十进制,二进制,八进制,十六进制
  • K8S之运用节点选择器指定Pod运行的节点
  • SERVLET间通信
  • vue父组件监听子组件是否加载完毕通过ref调用子组件的函数