在mac上安装cocoapods,一路的坑啊,无数报错啊有木有!

本以为安装很简单,mac下都自带ruby,使用ruby的gem命令即可下载安装:

$ sudo gem install cocoapods

$ pod setup

报错!有可能是gem版本太低,升级一下gem:

$ sudo gem update --system

完成后重新执行开始那两行,又报错:

Error installing pods:activesupport requires Ruby version >= 2.2.2

ruby版本太低,查看当前mac的ruby版本

$ ruby -v

输出ruby 1.8.7,现在需要使用RVM对Ruby进行升级,RVM是Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset),现在我们先安装RVM:

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

等一会儿安装成功RVM后:

$ source ~/.bashrc

$ source ~/.bash_profile

查看是否安装正常:

$ rvm -v

完成后,用RVM升级Ruby,可以先列出所有的ruby版本:

$ rvm list known

安装ruby 2.3.0

$ rvm install 2.3.0

安装完成之后查看是否安装成功:

$ ruby -v

完成后重新执行开始那两行,又报错!ruby软件源被墙了,更新一下ruby源,将官方的ruby源替换成国内淘宝的源:

$ gem sources --remove https://rubygems. org/

$ gem sources -a https://ruby.taobao.org/                      // 注意是https而不是http

$ gem sources -l

输出:

*** CURRENT SOURCES ***
https://ruby.taobao.org/                                                // 确保只有一个源

重新执行开始那两行,等了好久好久,期间查看下载进度:

$  cd ~/.cocoapods

$  du -sh *

下载了270M后的某个时候,又报错:

Setting up CocoaPods master repo 
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master –depth=1 
Cloning into ‘master’… 
error: RPC failed; result=18, HTTP code = 200 
fatal: The remote end hung up unexpectedly 
fatal: early EOF 
fatal: index-pack failed

郁闷了,白等了好久,查资料后:

$ git config --global http.postBuffer 524288000

$ git config --list

重新执行:

$ pod setup

等了好久好久后,又报上面那个错,再查资料后:

$ pod repo remove master                           // 移除master

$ sudo gem uninstall cocoapods                   // 卸载cocoapods

1、卸载pod

获取pod的路径:

$ which pod

删除pod

$ sudo rm -rf <pod的路径>

2、删除rubygems相关cocoapods的包

查看rubygems的本地程序包

$ gem list

输出:

***LOCALGEMS***

activesupport(4.2.3)
bigdecimal(1.2.0)
CFPropertyList(2.2.8)
claide(1.0.0.beta.1,0.9.1)
cocoapods(0.39.0,0.39.0.beta.4,0.38.2)
cocoapods-core(1.0.0.beta.4,0.39.0,0.39.0.beta.4,0.38.2)
cocoapods-deintegrate(1.0.0.beta.1)
cocoapods-downloader(1.0.0.beta.1,0.9.3,0.9.1)
cocoapods-plugins(1.0.0.beta.1,0.4.2)
cocoapods-search(1.0.0.beta.1,0.1.0)
cocoapods-stats(1.0.0.beta.3,0.6.2,0.6.1,0.5.3)
cocoapods-trunk(1.0.0.beta.2,0.6.4,0.6.1)
cocoapods-try(1.0.0.beta.2,0.5.1,0.4.5)
colored(1.2)
escape(0.0.4)
fourflusher(0.3.0)
fuzzy_match(2.0.4)
i18n(0.7.0)
io-console(0.4.2)
json(1.7.7)
libxml-ruby(2.6.0)
minitest(5.7.0,4.3.2)
molinillo(0.4.4,0.3.1)
nap(1.0.0,0.8.0)
netrc(0.7.8)
nokogiri(1.5.6)
psych(2.0.0)
rake(0.9.6)
rdoc(4.0.0)
rubygems-update(2.4.8)
sqlite3(1.3.7)
test-unit(2.0.0.0)
thread_safe(0.3.5)
tzinfo(1.2.2)
xcodeproj(1.0.0.beta.3,0.28.2,0.27.2,0.26.3)

移除跟cocoapods相关的程序包

cocoapods (0.39.0, 0.39.0.beta.4, 0.38.2)
cocoapods-core (1.0.0.beta.4, 0.39.0, 0.39.0.beta.4, 0.38.2)
cocoapods-deintegrate (1.0.0.beta.1)
cocoapods-downloader (1.0.0.beta.1, 0.9.3, 0.9.1)
cocoapods-plugins (1.0.0.beta.1, 0.4.2)
cocoapods-search (1.0.0.beta.1, 0.1.0)
cocoapods-stats (1.0.0.beta.3, 0.6.2, 0.6.1, 0.5.3)
cocoapods-trunk (1.0.0.beta.2, 0.6.4, 0.6.1)
cocoapods-try (1.0.0.beta.2, 0.5.1, 0.4.5)

把这些文件全部卸载

代码:sudo gem uninstal <文件名>

以删除cocoapods为例

$ sudo gem uninstal cocoapods

输出:sudo gem uninstal cocoapods

3、删除完之后,执行安装cocoapods

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

安装完之后:

$ pod--version

输出:1.0.1

再次执行

$ pod setup

.

.

.

又是等了好久好久,又是报错:

[!] /usr/local/bin/git clone https://github.com/CocoaPods/Specs.git master
Cloning into'master'...
error: RPC failed; result=56, HTTP code =200
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

我要崩溃啦啦啦啦啦啦啦啦

再次设置

$ git config --global http.postBuffer 524288000               // 1024*1024*500 = 500M

$ pod setup

还是一样的报错如上,有可能是postBuffer还不够大的原因,配置一个超级大的值试试:

$ git config --global http.postBuffer 1073741824              // 1024*1024*1024 = 1024M

$ pod setup

OK,等了好久终于搞定,输出:

Setting up CocoaPods master repo

Setup completed

来,试试CocoaPods是否可以使用,用CocoaPods的搜索功能验证一下:

$ pod search AFNetworking

现在终于好了。。。

总结一下:其实安装步骤很简单,关键步骤是将官方的ruby源替换成国内淘宝的源,然后是http.postBuffer设置成500M还不够大,我设置成1024M才成功,这个可能会因人而异吧,最后是网速网速网速网速网速网速网速网速网速网速网速网速网速网速。。。。。

cocoapods卸载与安装的各种坑的更多相关文章

  1. cocoapods卸载与安装

    引用自:https://www.aliyun.com/jiaocheng/389907.html 一.首先卸载pod which pod 得到pod的路径 sudo rm -rf <pod的路径 ...

  2. CocoaPods安装遇到的坑。

    //官方推荐地址 CocoaPods :http://code4app.com/article/cocoapods-install-usage cooped的安装  $(inherited) 报pod ...

  3. cocoapods卸载重装 解决clone,install,search很慢的问题

    电脑上面的cocoapods clone,pod install search的时候非常非常的慢,尝试了很多方法都无法解决,最后只能尝试着重装看看能不能解决问题 卸载 sudo gem uninsta ...

  4. CentOS7.4安装MySQL踩坑记录

    CentOS7.4安装MySQL踩坑记录 time: 2018.3.19 CentOS7.4安装MySQL时网上的文档虽然多但是不靠谱的也多, 可能因为版本与时间的问题, 所以记录下自己踩坑的过程, ...

  5. cloudermanger安装时需要安装或彻底正确卸载再安装orcal-java7-installer、oracle-java7-set-default(ubuntu14.04版本)(图文详解)

    不多说,直接上干货! 安装orcal-java7-installer和oracle-java7-set-default 安装JDK1.7 (所有节点)CDH要求至少是Oracle JDK7,Ubunt ...

  6. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(一) 一.Linux下安装MySQL 1.下载 下载地址:http://dev.mysql.co ...

  7. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)

    linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二) 安装apache web容器 . yum方式安装apache 注意apache在linux ...

  8. centos8中的MySQL卸载和安装

    centos8中的MySQL卸载和安装 前言 前几天在自己的服务器上安装了一个NDB集群[而且还没有成功] 放弃治疗后用一台没有mysql的服务器实现了单机版本的集群. 本来以为这事到这就结束了,结果 ...

  9. react native 0.6x 在创建项目时,CocoaPods 的依赖安装步骤卡解决方案

    前言 你需要做两件事 gem换源 pod repo 换源 实战 如果你已经成功安装了CocoaPods.那么这里你需要卸载它.gem换源1. 卸载CocoaPods 查看gem安装的东西 gem li ...

随机推荐

  1. WinPhone学习笔记(二)——页面外观剖析

    上一个篇博文说了WinPhone页面内部的东西,现在介绍表面的东西,先来看看一下一个WinPhone页面 这个页面分了三部分:顶部这个是状态栏, 中间这个是一个页面的内容部分, 最下面则是应用程序栏 ...

  2. php.ini 配置详细选项

    php.ini 或 php3.ini 是 PHP 在启动时会读取的配置文件.该文件的存放路径为 /usr/local/lib/.在 PHP 3.x 版的配置文件为 php3.ini:而在 PHP 4. ...

  3. 基于.Net Framework 4.0 Web API开发(5):ASP.NET Web APIs AJAX 跨域请求解决办法(CORS实现)

    概述:  ASP.NET Web API 的好用使用过的都知道,没有复杂的配置文件,一个简单的ApiController加上需要的Action就能工作.但是在使用API的时候总会遇到跨域请求的问题,特 ...

  4. Oracle 表分组 group by和模糊查询like

    分组group by写法 select 字段名 from 表名 group by 字段名 查询这个字段名里的种类分组后可以加聚合函数select 字段名,聚合函数 from 表名 group by 字 ...

  5. ==与equals()

    java中的比较有很多种 1.== 2.equals() 3.< 或 >或 != 4.instanceof 5.compareTo 1.什么时候用"==" 什么时候用& ...

  6. sublime Text-Theme

    一.Spacegray主题 1>安装Spacegray主题按下Ctrl+Shift+P,输入install,选择Package Control: Install Package,然后输入Spac ...

  7. volcanol_Linux_ 问题汇总系列_4_Thinkpad_E40_0578MDC_在Fedora 13 Linux(FC13)中如何安装无线网卡驱动

    今天晚上,我突然想在自己到笔记本上安装linux系统,因为我自己第一次接触到的linux是红帽支持到Fedora Core 4,所以一直最中意的linux 发行版本是FC系列,同时由于FC 15以后到 ...

  8. Java基础复习笔记系列 八 多线程编程

    Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...

  9. Guava学习笔记:简化异常处理的Throwables类

    有时候, 当我们我们捕获异常, 并且像把这个异常传递到下一个try/catch块中.Guava提供了一个异常处理工具类, 可以简单地捕获和重新抛出多个异常.例如: import java.io.IOE ...

  10. PHP 批量生成静态文件目录代码

    <?php /** * @author:jiangzaixing 20160314 * 获取静态文件方法 */ class StaticFile { const MAP_FILE_NAME = ...