mac cocoapod安装过程

摘要:
Cocoapod:用于自动管理第三方开发包的插件。不用说,新手只需要执行以下步骤:1˃安装ruby环境(可以忽略不计,不需要)1.1首先,让我们看看机器上的当前版本ruby,ruby-vruby2.40p0(2016-12-24修订版57164)[x86_64-darwin16]1.2接下来,让我们看一下服务器上的ruby版本(推荐使用rvm)rvm:RubyVersionManager

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 

注意: 如果安装结尾出现, 执行下面修复命令

mac cocoapod安装过程第1张

 

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

 mac cocoapod安装过程第2张

1.3 安装最新ruby(当前如果当前ruby版本够用你可以选择不安装)

rvm install 2.4

  1.3.1 安装的过程需要手动按一下enter(回车)键

mac cocoapod安装过程第3张

 

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

mac cocoapod安装过程第4张

 

注意: 如果安装失败提示

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

mac cocoapod安装过程第5张

 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升级版本以后你会发现上面写的会提示

mac cocoapod安装过程第6张

解决办法: 因为cocoapod 格式改了如下

platform :ios, '8.0'
use_frameworks!

// SwiftAFNetwoking 是你APP里targets 名如下图所示
target 'SwiftAFNetwoking' do

pod 'AFNetworking', '~> 2.6'

end 

再pod install

 

 

免责声明:文章转载自《mac cocoapod安装过程》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Unity中InputField 报错 FormatException: Input string was not in the correct formatMFC 多线程下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Mac下Sublime Text常用插件

Mac下Sublime Text常用插件 SideBarEnhancements 右键菜单增强插件 BracketHighlighter 括号、引号、标签高亮插件 Pretty JSON JSON美化,快捷键是command+control+J ConvertToUTF8 Terminal 在当前目录或文件下打开终端 HexViewer 二进制查看和编辑...

MAC安装MySQL踩过坑

一、mac 10.13.4 安装mysql-workbench-community-8.0.11-rc-macos-x86_64.dmg   1)配置密码有强密码模式和弱密码模式,强密码要求必须大小写英文和特殊字符,如Admin_123   2)支持修改为弱密码 USE mysql;ALTER USER 'root'@'localhost' IDENTIF...

使用kubeadm部署K8S v1.17.0集群

环境信息 操作系统:CentOS Linux release 7.7.1908 (Core) docker:19.03.8 kubernetes:v1.17.0 集群信息 hostname IP k8s-master 192.168.87.10 k8s-node01 192.168.87.11 一、准备工作(所有节点执行) 1.1、...

Kali Linux下的软件安装

新系统直接安装软件,常常被提示缺少依赖的包。 经过以下步骤可以解决缺少依赖的问题。 首先sudo apt-get -f install,修复安装。 sudo apt-get update,更新源。 sudo apt-get install aptitude。安装aptitude。 sudo aptitude update && sudo a...

euler ironic镜像驱动问题(二)

制作了一个NeoKylin-Server-7.0-aarch64-Release-Build06.euler.的ironic 镜像但是跑不起来 insmod、lsmod命令都用不了,用losetup 和kpartx 将qcow2镜像mount后,chroot进去lsinitrd试了下 [root@localhost# lsinitrd initr...

VirtualBox 克隆后 IP 地址相同(DHCP 分配),如何变更MAC以获取不同的IP?

由于需要做实验需要两个相同环境的虚拟机,在linux下使用virtualbox最小化安装centos6.0,并克隆了一个相同的,联网模式为桥接,修改配置文件之后重启网络发现二者的网络信息相同,所获取的IP地址也相同,这样以来从主机ssh过去就难以判断(实际上有先后顺序,可以分别连上两个相同IP的虚拟机),这时需要要修改其中一个mac地址,获取不同的IP地址...