问题一
描述
执行 flutter run 报错
CocoaPods not installed or not in valid state. Error launching application on iPhone 14 Pro.
分析
根据错误提示可知,该错误是cocoapods版本导致的。通过查看本地pod版本
> $ pod --version
1.5.3
很明显,flutter要求的版本要1.10.0以上,所以需要更新pod。
sudo gem install -n /usr/local/bin/ -v 1.11.0
但是更新pods操作并不生效,原因在于本地默认使用的ruby版本太低导致的。MacOS上默认会带有2.*.*版本的ruby。
>$ ruby --version
ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin17]
解决
1.安装rbenv
$ git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
可通过 **which rbenv**查看是否安装了, 如果已安装了rbenv,可省略git的第一步操作。
注:看好使用~/.zshrc 还是~/.bashrc
2.安装 ruby-build
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
不安装会导致使用rbenv时报错:rbenv: no such command `install'
3. 安装\更新 Ruby
查看可用的 ruby版本
rbenv install --list
安装相应版本ruby
rbenv install 3.0.6
检查版本列表
rbenv versions
选择使用的ruby版本
rbenv global 3.0.6
rbenv 中的 Ruby 版本有三个不同的作用域:全局(global),本地(local),当前终端(shell)。 查找版本的优先级是 当前终端 > 本地 > 全局。
4.安装指定版本的pod
sudo gem install cocoapods -v 1.10.0
which pod(用于安装后查看安装目录)
搞定