mac cocoapod安装过程
cocoapod: 自动化管理第三方开发包的一个插件, 废话不多说, 一个新手只需做如下几个步骤
1-> 安装ruby环境(可忽略, 不是必要)
1.1 首先我们先看看当前你机器上ruby的版本
ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin16]
1.2 接下来我们来看看服务器上的ruby版本 (建议用rvm)
RVM:Ruby Version Manager, Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)
1.2.1 安装rvm
curl -L get.rvm.io | bash -s stable
注意: 如果安装结尾出现, 执行下面修复命令

rvm fix-permissions
如果出现
* To start using RVM you need to run `source /Users/vp/.rvm/scripts/rvm`
in all your open shell windows, in rare cases you need to reopen all shell windows.
执行下面命令, 再去安装
source ~/.rvm/scripts/rvm
1.2.2 加载文件,测试是否安装正常(按照提示操作)
source ~/.bashrc
source ~/.bash_profile
source ~/.profile
rvm -v
rvm 1.29.2 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io/]
1.2.3 获取rvm列表, 就能看到最新ruby版本了, 如果与你机器的ruby版本不一致可以选择升级(⊙o⊙)哦
rvm list known

1.3 安装最新ruby(当前如果当前ruby版本够用你可以选择不安装)
rvm install 2.4
1.3.1 安装的过程需要手动按一下enter(回车)键

1.3.2 按完enter之后系统还会提示要你开机密码做验证

注意: 如果安装失败提示
Error running 'requirements_osx_port_libs_install curl-ca-bundle automake libtool libyaml libffi libksba',showing last 15 lines of /Users/acewill/.rvm/log/1468253599_ruby-2.3.0/package_install_curl-ca-bundle_automake_libtool_libyaml_libffi_libksba.log
原因是需要安装Homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装完之后在跳到【1.3】
1.3.3 检查版本是否安装成功
ruby -v
2-> 更换gem源
gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/ )源来查找、安装、升级和卸载软件包, 所以一定确保有ruby环境才能下面的操作.
国内人员不使用git自带的,因为自带的gem源是国外的网址,taobao为我们提供了一个很不错的'gem源', 现在的taobao源团队已经维护使用ruby-china, 所以现在推荐使用ruby-china
// 移除旧的
gem sources --remove https://rubygems.org/
// 添加新的
gem sources --add https://ruby.taobao.org/
// gem sources -ahttps://gems.ruby-china.org/
// 查看当前'源'
gem sources -l
3-> 更新升级gem
sudo gem update -n /usr/local/bin cocoapods -v 1.0.1
注意1: 如果升级提示 ERROR: While executing gem ... (OpenSSL::SSL::SSLError)
可能是你的ruby版本问题 或者是 源不对 回到【1】
4-> 安装
4.1 安装cocoapods
sudo gem install -n /usr/local/bin cocoapods
注意1: 如果升级提示
While executing gem ... (Gem::DependencyError)
Unable to resolve dependencies: cocoapods requires cocoapods-core (= 1.2.1), cocoapods-downloader (< 2.0, >= 1.1.3), cocoapods-trunk (< 2.0, >= 1.2.0), molinillo (~> 0.5.7), xcodeproj (< 2.0, >= 1.4.4), colored2 (~> 3.1), ruby-macho (~> 1.1)
可能你的gem版本问题, 执行下面这句
sudo gem update --system
成功之后在返回4.1
注意2:
GemWrappers: Can not wrap missing file: pod
GemWrappers: Can not wrap missing file: sandbox-pod
表示你的 gem出问题了执行下面的命令
gem uninstall rubygems-update
4.2 查看本地所有cocoapod的版本列表
gem list

4.3 如果某个版本不需要可卸载
sudo gem uninstall cocoapods -v 0.35.0
sudo gem uninstall cocoapods-core -v 0.35.0
sudo gem uninstall cocoapods // 卸载所有
5-> pod初始化
pod 需要从指定的源中获取到第三方库, 所以需要对一个'pod源' 进行初始化, 把所有的库映射到本地
5.1 更换repo镜像为国内服务器
// 移除现有的镜像
pod repo remove master
// 添加新镜像源
pod repo add master https://gitcafe.com/akuandev/Specs.git
pod repo update
已知道的源有
https://gitcafe.com/akuandev/Specs.git
http://git.oschina.net/akuandev/Specs.git
https://git.coding.net/hging/Specs.git
注意如果提示
MydeMacBook-Pro:~ taurin$ pod repo add master https://gitcafe.com/akuandev/Specs.git
[!] To setup the master specs repo, please run `pod setup`.
请执行5.2
5.2 初始化第三方库信息: 把第三方库映射到本地
pod setup
注意如果提示
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
[!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master --progress
Cloning into 'master'...
remote: Counting objects: 1975217, done.
remote: Compressing objects: 100% (401/401), done.
error: RPC failed; curl 18 transfer closed with outstanding read data remaining
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
执行下面指令
cd ~/.cocoapods/
sudo -rm -rf ~/.cocoapods/
返回到 5.2
5.3 查找第三方库
pod search tt
注意: 如果在查找的过程中出现Unable to find a pod with name, author, summary, or description matching `tt`
解决办法: 需要把以前查找过的json文件删掉
目录地址/Users/taojian/Library/Caches/CocoaPods/search_index.json
5.4 更新pod映射库
pod repo update
5.5 其他操作
5.4.1 查看当前pod版本
pod --version
5.4.2 查看repo
pod repo list
6-> 创建podfile文件集成第三方库
6.1 新建Podfile
vim Podfile
6.2 编辑podfile文件
- 输入i:进入编辑状态
- 输入dd:删除当前行
- 按ESC:退出编辑模式
- 输入:wq:保存并退出
6.3 Podfile文件的格式
以前你这么写是可以的, 应该是cocoapods0.35.0版本
```objc
platform :ios, '8.0'
pod '框架名字'
pod '框架名字', '~> 版本号'
```
1.0.0以后如果你还是那么写是报错的, pod不成功的, 需要下面的写法 (推荐这么写)
platform :ios, '8.0'
use_frameworks! // SwiftAFNetwoking 是你APP里targets 名如下图所示
target 'SwiftAFNetwoking' do pod 'AFNetworking', '~> 2.6' end
6.4 解析Podfile,安装第三方框架
pod install
6.5 升级第三方框架
pod update
6.6 手动创建podfile文件不用vim命令
直接在已有的项目里把podfile文件复制过来, 利用txt编辑器修改里面的内容, 最后pod install这样也可以的
7-> 出现的问题、与解决办法:
7.1. pod install 之后发现没有xcworkspace文件
解决办法
// 移除cocoapods
1. sudo gem uninstall cocoapods // 可能会让你选择一个版本
// 再安装cocoapods
2. sudo gem install -n /usr/local/bin cocoapods --pre
// 再install
3. pod install
7.2. 但如果cocoapod升级版本以后你会发现上面写的会提示

解决办法: 因为cocoapod 格式改了如下
platform :ios, '8.0'
use_frameworks! // SwiftAFNetwoking 是你APP里targets 名如下图所示
target 'SwiftAFNetwoking' do pod 'AFNetworking', '~> 2.6' end
再pod install
mac cocoapod安装过程的更多相关文章
- 【ABAP系列】SAP MAC GUI750安装过程
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP MAC GUI750安装 ...
- cocoapod安装过程中的幺蛾子
cocoapod是GoogleMobileAd framework推荐的一个自动解决依赖关系的工具. 安装cocoapod时遇到问题: EthandeMacBook-Air:Xcode ethan ...
- Mac下安装ElasticSearch及其插件
目录 环境介绍 安装过程 安装Kibana 环境介绍 软件版本:ElasticSearch7.0.0 Kibana7.0.0 系统环境:mac 环境 安装过程 官网下载 ElasticSearch7. ...
- 记录一次Mac虚拟机安装的过程(有图有真相)
这是我今天在公司用Vmware workstation虚拟机安装小狮子的全过程,记录一下没什么特别的用途,希望以后不要忘记,整个过程我总共花了半个多小时,挺快的.确实苹果的系统配上苹果的电脑就是牛叉, ...
- vagrant 1.8.6 安装过程及总结遇到的坑
下面先总结遇到的问题,这些问题如果你也遇到,可能需要搜索很多次才能找到原因. 如果想看安装过程,可以先直接跳到后面第二部分部分. 1 问题汇总: 1.1 vagrant版本过高问题. vagrant ...
- visual studio for mac的安装初体验
微软2016 Connect 大会发布了visuo studio for mac的pre版本,由于工作原因,现在工作环境是mac,虽然开发现在是在用python,但一直关注着.net的发展,于是自己很 ...
- Mac 下安装Jenkins
Mac 下安装Jenkins 开始 Jenkins是一个基于Java开发的一种持续集成工具,用于建工持续重复的工作,功能包括: 持续的软件版本发布/测试项目 监控外部调用执行的工作. 近期打算搭建自动 ...
- Mac中安装Vim7.4
Mac上的Vim Mac本身其实是预装了Vim的,但是目前的系统中都是Vim7.3版本的,而最新的Vim已经是7.4版了,因此为了能够使用最新版的vim,必须要对Mac中的vim要么升级,要么重装.在 ...
- 【转】mac os 安装php
安装PHP 添加brew的PHP扩展库: brew update brew tap homebrew/dupes brew tap josegonzalez/homebrew-php 可以使用brew ...
随机推荐
- Codeforces Round#516 Div.1 翻车记
A:开场懵逼.然后发现有人1min过,于是就sort了一下,于是就过了.正经证明的话,考虑回文串两端点一定是相同的,所以最多有Σcnti*(cnti+1)/2个,cnti为第i种字母出现次数.而sor ...
- MySQL数据库引擎MyISAM与InnoDB的区别
1. 存储结构 MyISAM:每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩展名为.MYD (MYData).索引文件 ...
- bzoj 1862: [Zjoi2006]GameZ游戏排名系统 & bzoj 1056: [HAOI2008]排名系统
傻叉了一晚上,把t打成x,然后这题神奇在于输出一段数,不足的不用输出,一开始我的是直接找没有后面就退,然后这样会格式错误囧……然后最后zj的还卡了下空间,于是不用string就过了……string毁一 ...
- CodeForces.5A Chat Server's Outgoing Traffic
Chat Server's Outgoing Traffic 点我挑战提目 考察点 模拟 字符串 Time Mem Len Lang 30 0 543 c++ 题意分析 给出类似一个群的即时通讯系统, ...
- 5028: 小Z的加油店(线段树)
NOI2012魔幻棋盘弱化版 gcd(a,b,c,d,e)=gcd(a,b-a,c-b,d-c,e-d) 然后就可以把区间修改变成差分后的点修了. 用BIT维护原序列,线段树维护区间gcd,支持点修区 ...
- bzoj2216: [Poi2011]Lightning Conductor(分治决策单调性优化)
每个pi要求 这个只需要正反DP(?)一次就行了,可以发现这个是有决策单调性的,用分治优化 #include<iostream> #include<cstring> #incl ...
- train loss与test loss结果分析(接利用caffe的solverstate断点训练)
train loss 不断下降,test loss不断下降,说明网络仍在学习; train loss 不断下降,test loss趋于不变,说明网络过拟合; train loss 趋于不变,test ...
- ACE线程管理机制-并发控制(4)
转载于:http://www.cnblogs.com/TianFang/archive/2006/12/04/581857.html ACE Synchronization类 这一类并发控制对象一般也 ...
- HDU 3507 斜率优化dp
Print Article Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)To ...
- luncence
问题的提出: 我们在访问淘宝,京东这些商城系统的时候,我们可以随意的在文本框输入关键字就可以获取到所想要的信息或者相关的信息,那么我们到底是如何实现这个功能的呢,为什么可以随意的输入就可以显示相关的信 ...