CocoaPods安装方法-2024.05.29

本文长期更新!M系列芯片的机型也适用

前言:

在需要安装CocoaPods时,总会有各种烦人的问题导致安装失败,这里总结一下,供大家参考。

参考1:CocoaPods 执行install或者update卡住或者失败
参考2:给Terminal终端命令行配置网络代理的方法

CocoaPods简介:

CocoaPods是一个用Ruby写的、负责管理iOS项目中第三方开源库的工具,CocoaPods能让我们集中的、统一管理第三方开源库,为我们节省设置和更新第三方开源库的时间。

CocoaPods安装:下面会介绍两种安装方法,推荐使用第二种,先敲重点!!!

重点一:如果你有梯子,建议全程开启,这样你的整个安装体验会很丝滑。
重点二:命令中间可能有空格看不出来,建议从文中直接复制粘贴执行;

注意:一些未知原因,直接复制的命令在终端执行无效,那就需要手动输入

一、前置安装

以下三个程序建议提前安装,安装方法都很简单,这里不做介绍;

1、Xcode
2、Command Line Tools for Xcode
3、Homebrew

二、使用Homebrew安装CocoaPods

这是目前来说最简单的的一种方式,只需要在终端执行以下命令,它会自动检测并安装依赖资源。

brew install cocoapods

需要注意的是,使用这种方式安装后不会直接生效,需要按照终端中的提示进行路径设置,还是需要你认真看下安装日志的。还有一个问题是作者本人在使用过程中,经常遇到各种命令执行报错问题,具体原因一直未知,这里还是建议采用下面这种方式安装CocoaPods。

三、使用Ruby安装CocoaPods

这是最为常见的一种安装方式,安装过程稍加繁琐;照着做一般不会有问题;

1、查看当前Ruby版本

Mac电脑自带Ruby环境,但是安装CocoaPods需要2.2.2版本及以上的,查看当前Ruby版本

// 终端执行
ruby -v

// 执行结果如下:如果不是下面的版本,下面会演示如何安装
ruby 3.3.1 (2024-04-23 revision c56cd86388) [arm64-darwin23]

2、安装RVM

后面需要使用RVM来安装或者升级Ruby;分别执行下面三条命令:

curl -L get.rvm.io | bash -s stable 

source ~/.bashrc

source ~/.bash_profile
3、查看RVM版本
// 终端执行
rvm -v 

// 结果如下
rvm 1.29.12 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
4、查看可用安装
// 终端执行
rvm list known

结果如下:

# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.8]
[ruby-]2.4[.10]
[ruby-]2.5[.8]
[ruby-]2.6[.6]
[ruby-]2.7[.2]
[ruby-]3[.0.0]
ruby-head
.....
以下省略

上面显示的最新版本是ruby-3.0.0,但是截止到标题日期最新版是3.3.1 稳定版,下面安装会使用3.3.1进行示例(最新版可能会有一些兼容问题,例如一些插件并没有支持到最新版导致不能正常使用,这个遇到问题了再说吧)。

5、安装Ruby

终端执行:

rvm install 3.3.1 
或 
rvm install ruby-3.3.1

如果遇到如下报错,是因为新版中OPENSSL1.0版本已经被废弃,需要使用OPENSSL3.0

Error running '__rvm_make -j12'
或者
Error running '__rvm_make -j8'

这时候需要使用下面的命令进行安装:

brew install openssl@3

rvm install ruby-3.3.1 --with-openssl-dir='brew --prefix openssl'
或者
rvm install ruby-3.3.1 --with-openssl-dir='brew --prefix openssl@3'

注意:安装过程中需要两次按下 Enter 键, 第二次按下后需要输入电脑访问密码(不可见,只管输入就行);

6、设置Ruby默认版本

如果你安装了多个Ruby就需要设置一下默认的版本

rvm use 3.3.1 --default
7、更新Gem和更换源
sudo gem update --system
///这一步建议是先执行后续用到了再添加
///例如,你使用Fastlane进行自动化部署这个是需要的
gem sources --remove https://rubygems.org/
gem sources --add https://gems.ruby-china.com/
8、验证你的Ruby镜像是并且仅是ruby-china
gem sources -l

如果是以下结果说明正确,如果有其他的请自行百度解决

*** CURRENT SOURCES ***

https://gems.ruby-china.com/
9、安装CocoaPods,以下二选一

第一种:(推荐)

sudo gem install -n /usr/local/bin cocoapods
10、如果安装了多个Xcode使用下面的命令选择(一般需要选择最近的Xcode版本)
sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
11、安装本地库,这个内容有点多,建议先看完在操作
说明:该步骤是安装本地库,不安装也没事,项目可以照常pod install,只不过pod search 命令用不了;如果你追求完美那就继续往下看;

A、第一种(官方的方法,已失效)

pod setup/// 这个是官方提供的安装方法,不过现在已失效

B、第二种(推荐)

/// A.如果你开启了梯子
git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
/// B.这是国内的镜像地址,不需要梯子,速度刚刚的,想省事的就直接选这个吧
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git  ~/.cocoapods/repos/trunk

上述命令执行完成之后的目录结构见下图,
如果不是就自己手动移动一下


Snip20191011_2.png
12、检验一下成果
pod search Alamofire /// 第一次比较慢,耐心等待

按Q键退出搜索
13、CocoaPods的具体使用

新建一个Xcode工程,cd到工程根目录下

/// 创建Podfile文件:
pod init

添加依赖库进行验证,如下

platform :ios, '13.0'
inhibit_all_warnings!
use_frameworks!
target 'DemoTarget' do
    pod 'Alamofire'
end
/// 安装
pod install

Success!!!

欢迎评论区发表你的意见或者相关经验


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容