Mac OS 更新到 Ventura 后,在 使用 pod 生成工程时出现类似以下警告信息:

Ignoring ffi-1.15.5 because its extensions are not built. Try: gem pristine ffi --version 1.15.5

这主要是因为系统自带的Ruby太旧了,而且新系统可能也将不再自嵌Ruby 等脚本语言。

再看看国外网友怎么说: Do Not Use the MacOS System Ruby

解决方法:

卸载旧的 Cocoapods sudo gem uninstall -n cocoapods

安装 RVM \curl -sSL https://get.rvm.io | bash -s stable

安装 Ruby 2.7 rvm install ruby-2.7

切换到Ruby 2.7.6 上面安装成功后,ruby默认使用的还是macOS系统自带的版本,需要切换到新安装的版本。 rvm use ruby-2.7.6

切换后校验版本号 ruby -v

可以通过查看 ruby 的当前文件位置,确认是否使用的新安装的版本,而不是系统自带的版本。同时,也可以将取得的文件路径配置到环境变量中。 which ruby

系统自带ruby的路径为/usr/bin/ruby,通过RVM 安装的ruby 路径为~/.rvm/rubies/ruby-2.7.6/bin/ruby。 设置默认的Ruby版本,避免每次启动终端都需要重新切换Ruby(可能需要在安装ruby之后重启终端才能执行成功)。 rvm --default use 2.7.6

安装 Cocoapods sudo gem install -n /usr/local/bin cocoapods

安装完成后,校验版本号 pod --version

查看原文