2021版安装cocoapods

Posted 长沙火山

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021版安装cocoapods相关的知识,希望对你有一定的参考价值。

一、前言

之前cocopods升级了很多次由于各种报错问题,一直没有升级成功,今天再次升级cocopods,升级成功了。之前升级失败,其实原因不在于cocoapods本身,而是由于要升级cocopods要先升级ruby,升级ruby要手动设置路径,而且有时候还会因为网络的原因导致失败。而升级ruby之前,要先升级homebrew。

在进行cocoapods升级之前,先来看一下小编的环境:

(1) Mac OS 系统版本:Monterey 12.0版本
Mac OS 的系统版本影响不大,只要不是太老的版本就行,太老的版本估计要升级系统。

(2) Homebrew 版本:

brew -v
//Homebrew 3.1.5-78-g3e32762
//现在Homebrew 最新的版本为:Homebrew 3.3.7

(3) Ruby 的版本:

ruby -v
//ruby 2.6.3p62 (2019-04-16 revision 67580)
//现在ruby最新的版本为: 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) 
//这个ruby 2.6的版本是macOS自带的版本,要升级到比较新的版本才能成功更新cocopods,这个ruby版本太低是导致安装或者更新cocoapods失败的主要原因。

(4) cocopods 的版本:

pod --version
//1.9.3
//最新的版本为: 1.11.2

此时,我们来测试一下,在不更新以上环境的情况下,直接升级pod看看是否能成功:

sudo gem install -n /usr/local/bin cocoapods
//报错信息如下:
//ERROR:  Error installing cocoapods:
//ERROR: Failed to build gem native extension.

现在,要先升级相关环境的版本,然后再去安装或者升级pod,下面请更小编一起先来升级一下环境的版本吧。

二、升级相关环境的版本

2.1 升级 HomeBrew

运行命令行:

brew update
//最后出现以下提示,就代表brew升级成功了
//You have 24 outdated formulae installed.
//You can upgrade them with brew upgrade
//or list them with brew outdated.

brew -v //查看版本号:Homebrew 3.3.7

如果一切顺利,就很容易并且很快就升级brew了,如果遇到报错,请参考下面对应报错的解决办法。

2.1.1 报错情况一: homebrew-core is a shallow clone

运行命令brew update之后,报错,如下:

yuancandeMacBook-Pro-2:~ yuancan$ brew update
Error: 
  homebrew-core is a shallow clone.
  homebrew-cask is a shallow clone.
To `brew update`, first run:
  git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
  git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow

这种报错有两种解决方案:

解决方案一:

cd /usr/local/Homebrew/Library/Taps/homebrew
rm -rf homebrew-core
rm -rf homebrew-cask
brew upgrade

解决方案二:

按照报错的提示,运行如下两条命令行:

git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask fetch --unshallow

//这条命令运行可能会报错,如下:
fatal: unable to access 'https://github.com/Homebrew/homebrew-cask/': LibreSSL SSL_connect: Operation timed out in connection to github.com:443
//这个是网络原因,多试几次便可成功

上述两条命令都执行成功之后,便可升级 homebrew

 brew update
 brew -v //查看版本号:Homebrew 3.3.7

2.2 升级ruby

brew install ruby

执行安装命令之后,需要等大概几分钟,有点慢,会出现如下提示:

You may want to add this to your PATH.

ruby is keg-only, which means it was not symlinked into /usr/local,
because macOS already provides this software and installing another version in
parallel can cause all kinds of trouble.

If you need to have ruby first in your PATH, run:
  echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~/.zshrc

For compilers to find ruby you may need to set:
  export LDFLAGS="-L/usr/local/opt/ruby/lib"
  export CPPFLAGS="-I/usr/local/opt/ruby/include"

此时,ruby的安装包已经下载到电脑本地了。出现这个提示是告诉你需要设置安装路径,按照如下方式设置命令即可:

执行命令:

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

执行命令:

source ~/.bash_profile

执行上面命令后,查看版本后,会判断已更新到最新版本

brew install ruby
ruby -v //版本号:ruby 3.0.3p157 (2021-11-24 revision 3fb7d2cadc) 

2.3 安装cocoapods

2.3.1 更换安装源

查看安装源的命令:

gem sources -l

*** CURRENT SOURCES ***
https://rubygems.org/

https://rubygems.org/ 是系统默认的源,需要替换成 https://gems.ruby-china.com

替换源命令:

gem sources --remove https://rubygems.org/
gem sources --add https://gems.ruby-china.com/
gem sources -l
*** CURRENT SOURCES ***

https://gems.ruby-china.com

这样,就替换成功了,接下来可以安装pod了。

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

到这一步,基本上没有什么问题,等待一两分中,便可安装完成。

查看pod版本号:

ahdms@YuanCan ~ % pod --version
1.11.2

有问题,欢迎在评论区讨论。

以上是关于2021版安装cocoapods的主要内容,如果未能解决你的问题,请参考以下文章

CocoaPods 安装旧版框架

M1 版 MacBook Pro 解决 cocoapods 安装使用问题

Mac book pro 安装 cocoapods工具

错误说安装后没有安装cocoapods

2021年cocoapods 安装

组件化远程私有库解决方案(cocoapods基于git svn)----高级版