iOS 10.10 10.11 10.12 安装升级CocoPods
CocoPods简介
- CocoaPods是一个用Ruby写的,负责管理iOS以及OSX系统下的一个第三方类库管理工具,通过CocoaPods,我们可以集中,统一的管理第三方开源库。当然这些库徐亚CocoaPods本身支持。
- 在引入第三方库时,它可以自动为我们完成各种配置,包括响应系统以来,配置编译阶段,链接器选项,甚至是ARC环境下的-fno-objc-arc配置等等
编译环境
系统版本:macOS Sierra 10.12.6
Xcode: v9.2(9C40b)
CocoaPods安装
貌似只能使用终端命令行
1.升级Ruby环境
$ sudo gem update --system
上面这个方法在CocoaPods 1.0之后应该是不行了,有可能会出现以下错误
Operation not permitted - /usr/bin/update_rubygems

在stackoverflow.com中找到了答案
$ sudo gem update -n /usr/local/bin --system

注意
其实在命令行中系统就提示了解决办法
/usr/bin/update_rubygems
2.更换Ruby镜像
首先 先移除现有的Ruby原生的镜像
$ gem sources --remove https://rubygems.org/
再添加国内的镜像源
$ gem sources -a https://gems.ruby-china.org/
注意
国内淘宝的镜像源已经不更新了
更新完毕之后通过命令行来查看当前的镜像源
$ gem sources -l
成功则显示如下

失败则重复执行 $ gem sources -a https://gems.ruby-china.org/
3.安装CocoaPods
提示
在Mac OSX 10.9 CocoaPods 还在0.9 时期 安装CocoaPods 的命令是
$ sudo gem install cocoapods在Mac OSX 10.10之后 CocoaPods 已经升级到了1.0.0 命令已经变更为
$ sudo gem install -n /usr/local/bin cocoapods
执行命令
$ sudo gem install -n /usr/local/bin cocoapods
成功则出现如图所示

执行命令
$ pod setup
这时会出现 Setting up CocoaPods master repo 需要等待一段时间
4.使用CocoaPods
使用命令查看pod的版本号
$ pod --version
控制台输出 1.4.0
说明已经成功安装了CocoaPods
接下来需要 cd 到你的工程中
$ cd /Users/maybe/Desktop/testCocoaPods
我新建了一个项目 项目名为
testCocoaPods
touch podFile通过vim命令在工程中创建一个podFile文件
open podFile 通过vim命令打开该文件

配置好podFile文件,保存。
pod install 通过该命令下载

vim中表示已经下载完成,可以关闭当前Xcode项目,使用
testCocoaPods.xcworkspace

在这里 已经可以正常的使用CocoaPods了
5.CocoaPods一些异常处理
1. 搜索不到最新的第三方库版本
解决办法
- 通过命令行升级你本地的
repo
$ pod repo update
如果更新不下来,或者更新下来还是没有你需要的版本,就可以尝试升级pod版本。
1.3.1 升级 1.4.0 的时候我就发现有这个问题,直接更新repo不行,需要更新pod版本才能搜到最新版本的第三方库
这时候按照上面的方法执行下去,重新安装一遍 pod 就可以,注意查看下pod版本时候是否有更新。
有时候可能更新下来还是搜索不到,可以尝试使用命令来处理下
rm ~/Library/Caches/CocoaPods/search_index.json
来删除索引
成功删除缓存文件,终端是没有提示的,Unix的尿性就是没有提示就是成功意思。
这时重新发起搜索
Creating search index for spec repo 'master'..
需要等待一会,正在重新建立索引
稍微等待几分钟就可以重新搜索到。
2.卸载CocoaPods
卸载命令
$ sudo gem uninstall cocoapods
可进入文件夹中查看repo
$ cd ~/.cocoapods
卸载完成后,这个文件夹会被清空
3 [!] Failed to connect to GitHub to update the CocoaPods/Specs specs repo - Please check if you are offline, or that GitHub is down
当我们使用pod update 或者 pod repo update 时,可能会出现 [!] Failed to connect to GitHub to update the CocoaPods/Specs specs repo - Please check if you are offline, or that GitHub is down问题

一开始我认为是网络问题,后来频繁的出现我发现是链接github出现了问题。
在stackoverflow 我找到了解决办法。
在这里可以看到出现这个问题的原因,以及解决的办法
2018年2月之后,其中一个主要问题是“弱密码标准被删除”。
To solve this, first you need to update openssl, then ruby, then cocoapod.
开始搬运代码
$ which openssl
/usr/bin/openssl
$ openssl version
OpenSSL 0.9.8zh 14 Jan 2016
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ brew update
$ brew install openssl
$ brew upgrade openssl
`` If you need to have this software first in your PATH run: echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
$ echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile
$ which openssl
/usr/local/opt/openssl/bin/openssl
$ openssl version
OpenSSL 1.0.2n 7 Dec 2017
$ brew install rbenv ruby-build
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.bash_profile
$ source ~/.bash_profile
$ rbenv install --list
Available versions:
1.8.5-p52
1.8.5-p113
1.8.5-p114
1.8.5-p115
1.8.5-p231
1.8.6
:
2.5.0-rc1
2.5.0
2.6.0-dev
:
$ rbenv install 2.5.0
$ rbenv versions
* system (set by /Users/username/.rbenv/version)
2.5.0
$ ruby --version
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]
$ rbenv global 2.5.0
$ rbenv versions
system
* 2.5.0 (set by /Users/username/.rbenv/version)
$ ruby --version
ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin16]
$ gem install cocoapods -n /usr/local/bin
$ which pod
/usr/local/bin/pod
$ pod --version
1.4.0
成功走到最后,则代表安装成功了,可以放心的 pod update 和 pod repo update了
Ruby选择的版本必须是大于2.0.0版本,最好是选择最新的例如 2.5.0 或者 2.5.1
在 2018.4.24你pod可能更新的是1.5.0版本,这个关系不大
还有一种解决方案 是每次需要更新你的repo时,将老版本的repo删除,重新下载
$sudo rm -fr ~/.cocoapods/repos/master
$pod setup
$pod install
6. 快速添加第三方库
在使用CocoaPods添加第三方库类库时,无论是执行``` pod install 还是 pod update 时,经常会卡在Analyzing dependencies,这是因为在更新本地 pod spec文件导致的。通过no-repo-update标志可以不更新本地 pod spec``索引。
注意:第一次创建CocoaPods时不能使用,需要更新本地repo时不能使用
pod install --no-repo-update
pod update --no-repo-update
打印详细日志
pod update -verbose
iOS 10.10 10.11 10.12 安装升级CocoPods的更多相关文章
- VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01|
VMware Workstation 11 安装MAC OS X 10.10 Yosemite(14B25)图解 2015-01-13 12:26:01| 分类: 网络互联 | 标签:10.10 ...
- VMware 12安装Mac OS X 10.11&解决上网的问题
近日想在Win10上安装Mac OS 玩玩,于是上网搜了相关资源,查看了相关经验分享,开始着手安装.系统很快成功安装,但最大问题是虚拟机中的Mac OS无法上网.费了很长时间,最终看到Ping通结果, ...
- Ubuntu 11.10下GRUB 2 1.99版编译安装笔记
Ubuntu 11.10下GRUB 2 1.99版编译安装笔记 以下的安装笔记,都是QLi自己学习grub2 时,所整理的,还是新手,有错误的话,请大家帮忙就别提出来了. 最新版grub V1.99官 ...
- 安装教程-VMware 12 安装 Windows 10 企业版
VMware 12 安装 Windows 10 企业版 1.实验描述 在虚拟机中,手动安装 Windows10 企业版操作系统,为一些实验提供平台,因此,有关系统激活问题不再演示.可自行百度,或者加入 ...
- 升级10.11.6后CocoaPods的坑,之前10.11.4已经安装好的,居然没了Failed to locate Homebrew!
升级10.11.6后CocoaPods的坑,之前10.11.4已经安装好的,居然没了,用命令 sudo gem install cocoapod 装不上,换 sudo gem install -n/u ...
- [团队项目]第二个冲刺 看板和燃尽图 Sprint2 6.8/6.9/6.10/6.11/6.12/6.13/6.14
1.开始一个新的冲刺: 起止:2016.6.1~2016.6.14 按照以下过程进行 ProductBacklog:继续向下细化 Sprint 计划会议:确定此次冲刺要完成的目标 Sprint Bac ...
- ubuntu 11.10 安装apache2 tomcat6
ubuntu 11.10 安装apache2 tomcat6 导读 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目 ...
- OSX 10.10+Xcode5.1 无法启动或者安装应用程序到iOS 6.1 simulator
错误症状: OSX 10.10+Xcode5.1 无法启动或者安装应用程序到iOS 6.1 simulator 错误原因: iOS Simulator 内核要使用OSX 系统内核,所以iOS Simu ...
- Ubuntu 11.10 安装GMONE3,卸载 UNITY和UNITY 2D
Ubuntu 11.10安装GNOME3: 1)sudo apt-get install gnome-shell sudo apt-get install gnome-themes* (或者 ...
随机推荐
- 编译、裁剪、安装、删除 Ubuntu内核和模块管理
一.下载最新内核文件 地址:http://www.kernel.org,一般下载Full Source版本. 下载完毕后,放到任意文件夹中,使用命令: tar jxvf linux-x.x.x.tar ...
- NLP︱词向量经验总结(功能作用、高维可视化、R语言实现、大规模语料、延伸拓展)
R语言由于效率问题,实现自然语言处理的分析会受到一定的影响,如何提高效率以及提升词向量的精度是在当前软件环境下,比较需要解决的问题. 笔者认为还存在的问题有: 1.如何在R语言环境下,大规模语料提高运 ...
- MFC下用sdl 显示bmp、rgb、yuv
#include <libsdl/SDL.h>//#include "SDL.h"#ifdef TEST_VGA16 /* Define this if you wan ...
- MySQL语法大全整理的自学笔记
select * from emp; #注释 #--------------------------- #----命令行连接MySql--------- #启动mysql服务器 net start m ...
- hibernate(二)主键生成策略
hibernate主键生成策略主要指的是在实体类orm的配置 <id name=""> <generator class="native"&g ...
- CentOS源码包安装apache、nginx服务
1.通过官网下载apache.nginx源码包 2.进入apache源码包所在目录,解压tar -xf httpd-2.4.12.tar.gz 3.cd httpd-2.4.12 4.阅读README ...
- css设置居中的方案总结
回想一下,自己平时项目里遇到的比较多的就是css如何让元素居中显示,其实差不多每种情况都遇到过,所采用的方法也都各有利弊,下面对这些方法来做个概括,对其中的坑点,也会一一指出来,希望能给遇到问题的同学 ...
- 使用PHPword中文乱码并且下载的方法
如果你的编码格式是utf-8的话就用这个 1.找到 Section.php 的 addText 函数 $givenText = utf8_encode($text); 改成 $givenText = ...
- 关于protected关键字
protected,算是默认的访问作用域的超集,他们在相同包下时,都可以访问所声明的成员:但对于不同包的访问,默认访问域就不行,protected也必须是通过继承关系来访问. TestBase bas ...
- Autofac高级用法之动态代理
前言 Autofac的DynamicProxy来自老牌的Castle项目.DynamicProxy(以下称为动态代理)起作用主要是为我们的类生成一个代理类,这个代理类可以在我们调用原本类的方法之前,调 ...