mac安装cocoapods完整步骤

news2025/1/11 14:27:49

一、概念理解

  首先不要急着搜索终端命令,你需要明白安装 cocoapods 都需要什么环境,这对于安装途中如果遇到问题该如何解决很重要,很重要,很重要!

  1、安装pods需要依赖 ruby 环境,而安装 ruby 你需要借助工具 rvm,rvm是用来管理 ruby 版本的,也就是说你的电脑上可以安装多个不同版本的 ruby 可以使用 rvm 来管理他们。而安装 rvm 又需要借助另外一个工具 Homebrew,Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。这里不对 Homebrew 做过多讲解。

  2、所以看完了上面,大概的安装步骤就已经很明确了—— 首先安装Homebrew --> 再安装rvm --> 再安装ruby -> 最后安装cocoapods。

二、进入正题

  1、安装Homebrew

  首先打开终端输入下面命令检测是否已经安装了 Homebrew :

brew list

  如果终端有输出一些文件名,证明已经安装过了Homebrew这个时候你可以直接跳到第2步,如果显示 brew not Fond 之类的提示就需要安装Homebrew。

  安装 Homebrew,终端输入以下命令:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

  这里注意最好去Homebrew官网copy命令,因为命令可能会改变,官网地址:https://brew.sh,安装过程如果遇到什么问题,自行百度不做过多讲解,因为你遇到的问题网上已经有铺天盖地的解决方案了,基本上遇到的问题都是因为访问不到网站或者下不到资源。

安装失败按照这个方法:Mac终端: brew command not found 解决方法_一只Black的博客-CSDN博客_mac没有brew命令

  2、安装 Rvm

  如果 Homebrew 已经安装成功,接下来安装Rvm,首先检查是否已安装过Rvm,输入下面命令:

rvm -v

  如果提示 rvm 1.29.9 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io] 证明已经安装了Rvm可以直接进行第3步,否则需要安装Rvm。

  安装 Rvm,终端输入以下命令:

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

  指定源:

`source ~/.rvm/scripts/rvm`

  检查安装是否成功:

rvm -v
// 安装成功
// rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

  

  3、安装 Ruby

  在确保已经安装了 Rvm 之后,利用 Rvm 安装 Ruby:

rvm list known           // 查看ruby版本列表 最好更新到最新的
rvm install 2.6.3        // 安装2.6.3版本(安装最新的或者次新的版本即可)

  注意!重点来了,执行这一步时很可能会出现错误:Error running 'requirements_osx_brew_libs_install autoconf automake libtool pkg-config libyaml readline libksba openssl',如图:

  

  这个时候不要慌,上面提示的大概意思是在安装autoconf、automake、libtool、。。。、openssl时出现了错误,因为这些依赖文件有的比较大其中最大的大概有300M左右,所以如果你的网络不好下载很容易超时,这里建议电脑连接手机热点下载,亲测可行速度比较快。接下来我们就手动一步一步来安装这些依赖文件。终端依次执行:

brew install autoconf
brew install automake
brew install libtool
brew install libyaml
brew install libxslt
brew install libksba
brew install openssl

  执行完这些命令,该下的依赖已经下载的差不多了,然后再执行一次 rvm install 2.6.3,如果有没下载到的依赖文件也不要担心,当再次执行 rvm install 2.6.3 时系统会自动检测你缺少哪些依赖会自动下载的。然后你就会发现终端开始自动跑命令行,这时候是不是很开心,终于要成功了,内心一阵笑嘻嘻,然而现实总是让人忍不住来一句MMP,在最后关头又特么出了差错啦,啊啊啊啊啊啊。。。

  报错显示:Error running '__rvm_make -j 1

  不要慌,兵来将挡水来土掩嘛。接着往下看,一般出现这种情况是因为你的 xcode command line 出了问题,要么没有安装要么版本不对。知道问题了就解决呗,终端输入:

xcode-select --install

  然后再执行 rvm install 2.6.3,这个时候随着终端里代码不断跑动,终于看到了一片祥和的绿色(从来没有像现在这样喜欢这个颜色 =_=)。

  最后说一下安装 Ruby 时一定要沉得住气,终端在下载资源或者提示你 please wait 时,一定要耐心等待,而且一定不能让电脑自动休眠,不能让电脑自动休眠,不能让电脑自动休眠!

  如果做了这么多你发现还是有错误就是安装不成功Ruby,没关系那就回到最初的起点(又回到最初的起点,记忆中你青涩的脸。。。),卸载RVM,重新安装!

  记得要关闭终端重新打开,输入以下命令卸载 Rvm:

sudo rm -rf .rvm .rvmrc   /etc/rvmrc ;gem uninstall rvm

  卸载完之后,按照上面的步骤从第2步开始再来一遍。

  4、安装 Cocoapods

  接下来一定要注意!注意!注意!

  如果你的 Mac系统是 10.11 之前,输入:

sudo gem install cocoapods

  如果你的 Mac系统是 10.11 之后,输入:

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

  这篇教程说的是 MacOS 10.15.x的系统当然要选择:sudo gem install -n /usr/local/bin cocoapods 了。

  等待终端跑完,你是不是迫不及待的想看看你的 pods 安装成功了没,所以你迅速的输入了 pod search AFNetworking,看看是不是成功了,结果又吃了闭门羹,报错如下:

pod search AFNetworking
[!] Unable to find a pod with name, author, summary, or description matching `AFNetworking`

  这是因为虽然你 pods 是安装成功了,但是 .cocoapods/repos 库本地还没有,当然搜索不到了,所以需要执行最后一步:

git clone https://git.coding.net/CocoaPods/Specs.git ~/.cocoapods/repos/master

  耐心等待终端下载完成,再试试 pod search AFNetworking ,这时候是不是一阵笑嘻嘻,哈哈哈终于成功了,内心忍不住感叹一句我真特么skr人才。

安装失败使用这个git地址:git clone https://github.com/CocoaPods/Specs.git ~/.cocoapods/repos/master[!] Unable to find a pod with name, author, summary, or description matching_王飞飞不会飞的博客-CSDN博客

  转载请注明出处:https://www.cnblogs.com/shisishao/p/12553221.html ​​​​​​​

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/118275.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[网鼎杯 2020 白虎组]PicDown(任意文件读取)

打开界面发现有一个get传参然后,尝试任意文件读取漏洞,/etc/passwd看一下,提示下载了一个jpg图片然后 打不开只能用 010查看一下信息 看来是猜对了,然后 如果日记没删掉可以查看历史记录 .bash_history呃呃呃差不到,那就看一下现…

Python 现代控制理论 —— 梯度下降法实现的线性回归系统

线性回归是有监督学习中的经典问题,其核心在于找到样本的多个特征与标签值之间的线性关系。样本集中的第j个样本可被表示为: 特征向量:标签值: 而线性回归系统给出权重向量: 使得该样本的预测值为: 当所有…

Python采集某网站m3u8内容,美女我来了~

前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 又到了学Python时刻~ 环境使用: Python 3.8 Pycharm 模块使用: import requests >>> pip install requests import re 正则表达式 解析数据 import json 安装python第三方模块: win R 输入 cmd 点击确…

不止一面的百变 ACE

这个时代,可谓是云原生的黄金时代。 站在这个云原生的风口,年轻一代的开发者如何看待自己所处的环境?他们眼中的云原生未来是什么样? 今天我们就将走近一位年轻的“云原生原住民”,听听他作为开发者的成长经历。 War…

【python3】9.python高阶内容(上)_基础

9.python高阶内容(上)_基础 2022.12.27 python高阶内容(上)_基础9.1 字符串的高阶玩法 9.1.1 %百分号模式 %d:整数%i:整数%s:字符%f:小数 【方式1】:前面用格式占位,后面用具体的内容 name "莫烦…

Android设计模式详解之访问者模式

前言 访问者模式是一种将数据操作与数据结构分离的设计模式; 定义:封装一些作用于某种数据结构中的各元素的操作,它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作; 使用场景: 对象结构比较稳定&a…

大厂与小厂招人的区别,看完多少有点不敢相信

前两天在头条发了一条招人的感慨,关于大厂招人和小公司招人的区别。 大厂:有影响力,有钱,能够吸引了大量的应聘者。因此,也就有了筛选的资格,比如必须985名校毕业,必须35岁以下,不能…

基于DoIP使用CANoe对ECU进行诊断测试

伴随以太网引入到车载网络中,本文分享通过常用工具CANoe怎么样对ECU进行通信以及测试。 相比在车载CAN总线,以太网又有什么与众不同之处? 1、硬件接口卡(收发器) 以往车载CAN网络较常使用的是VN 16XX 系列,在连接ECU进行通信时,除了配置波特率也要进行通道分配: 而…

7个学习UI、UX设计一定要经历的步骤

我们不是一些有才华的设计师。我们天生就有艺术天赋。后天我们学会了设计技巧。设计的根本目的是解决问题。设计是不断发现和解决问题。 有许多设计领域:UI、UX.产品设计师.平面设计师.交互设计师.信息架构师等,所以要找出你最感兴趣的设计专业。 现在让…

美颜sdk动态贴纸技术、代码分析

目前,美颜sdk动态贴纸已经成了各大直播平台主播的必备“直播伴侣”,在其他的视频拍摄场景动态贴纸的热度同样很高,本篇文章小编将为大家深度盘点一下美颜sdk动态贴纸的技术实现以及代码。 一、多终端适配 对于如今的直播平台终端来说&#x…

CAPL学习之路-测试功能集函数(测试结构化)

用户可以使用如下函数在测试报告中对每一条测试用例设置结构化的输出内容 TestCaseDescription 添加测试用例的描述文本 此函数用于测试用例中,描述文本会添加在固定区域(测试用例title的下方)。多次调用该函数,描述文本会合并显示在固定区域。如果想让描述文本换行,可以…

爆火的Web3.0背后,百度营销如何抓住流量密码?

出品| 大力财经 文 | 魏力 AI、元宇宙、Web3.0、AIGC等新技术、新概念的加持,给传统的流量营销平台带来了前所未有的挑战。尤其是短视频时代的崛起,用户的使用习惯开始改变,完全改变了流量的逻辑和习惯。 从搜索引擎业务起家的百度&#x…

DoIP---车载以太网诊断方面边缘节点的路由策略分析

假期后开工第一天,规划好自己一天需要做的事情,按部就班完成每日任务,做好每日总结。 自己一天一个脚印,这不是鸡血,这是工作态度!!! 惯例分享一段喜欢的文字: 每个人…

目标检测之FCOS算法分析

网络结构 (图片来自原论文:FCOS: Fully Convolutional One-Stage Object Detection) 在ResNet50 Backbone中,C3,C4,C5C3,C4,C5C3,C4,C5是卷积特征图; 在FPN结构中,P3,P4,P5,P6,P7P3,P4,P5,P6,P7P3,P4,P5,P6,P7是最后用于预测的特…

2023跨境出海指南:泰国网红营销白皮书

作为东南亚第二大经济体,泰国一直是旅游和企业出海的热门之地。随着电商经济和互联网的发展,加上疫情的催化,泰国的社交媒体行业也得到了飞速发展,已经成为了主流营销方式之一。本文Nox聚星就从网红营销的角度,和大家探…

代码随想录-46-226.翻转二叉树

目录前言题目1.使用队列思路(定义变量)2. 本题思路分析:3. 算法实现4. pop函数的算法复杂度5. 算法坑点前言 在本科毕设结束后,我开始刷卡哥的“代码随想录”,每天一节。自己的总结笔记均会放在“算法刷题-代码随想录…

浅谈一下个人基于IRIS后端业务开发框架的理解

文章目录浅谈一下个人基于IRIS后端业务开发框架的理解现状方案具体实现BaseBizDataFilterSqlImp、RefApiUtil总结浅谈一下个人基于IRIS后端业务开发框架的理解现状由于国内使用基于M语言IRIS平台几乎都在医疗行业。医疗系统又非常的庞大和复杂。前期由于快速占领市场&#xff0…

珠城科技在创业板上市:IPO首日跌破发行价,市值相对蒸发约7亿元

12月26日,浙江珠城科技股份有限公司(下称“珠城科技”,SZ:301280)在深圳证券交易所创业板上市。本次上市,珠城科技的发行价格为67.40元/股,发行数量为1628.34万股,募资总额约为10.98亿元&#x…

java线程

1.创建线程和运行线程 1.1.方式一: 直接使用Thread线程对象创建线程 Slf4j public class TestThread {public static void main(String[] args) {//创建一个线程,并且指定线程名称为"t1"Thread thread new Thread("t1") {Overridepublic void run() {//…

基于JAVA springboot + MYSQL +VUE的项目管理系统(含数据库),包括工时统计、原型预览、效果图管理等

平台介绍 无鱼工时管理系统,是一款轻量级工时记录和管理工具,包括项目管理,工时上报,工时日报,工时统计等功能。 无鱼工时管理系统可通过员工工时上报的方式,来记录项目所花费的工时,帮助企业…