1、移除现有Ruby默认源
$ gem sources --remove https://rubygems.org/
 
2、使用新的源
$ gem sources -a https://ruby.taobao.org/
 
备注:现在貌似淘宝也不更新了,可以自行上网搜一个源站。
 
解释一下步骤1和步骤2的作用:
其实就是为了电脑在连不上外网情况下使用的镜像源站,不然的话,后续pod install会失败。
如果电脑能连接外网,没必要换源。
 
3、验证新源是否替换成功
$ gem sources -l
 
4、安装CocoaPods
 $ sudo gem install cocoapods 
 
苹果系统升级 OS X EL Capitan 后,上述命令改为:
$ sudo gem install -n /usr/local/bin cocoapods  
 
然后进行setup操作:
$ pod setup
 
5、更新gem
$ sudo gem update --system
6、新建工程,并在终端用cd指令到文件夹内
$ pod search protobuf
 
7、新建Podfile文件
$ vim Podfile
 
写入以下内容并保存,小提示:(终端vim文件 按 i 可编辑 ,esc 退出编辑,:wq  可保存退出)
# Uncomment this line to define a global platform for your project
platform :ios, '9.0' workspace 'WebRTCDemo.xcworkspace'
project 'WebRTCDemo.xcodeproj' inhibit_all_warnings! target 'WebRTCDemo' do
pod 'MBProgressHUD', '1.1.0'
pod 'ZQAlterField'
pod 'Masonry', '1.1.0'
end
 
8、导入第三方库
$ pod install
 
9、打开xcworkspace文件,启动工程
$ open WebRTCDemo.xcworkspace
 

 
以下是我用以前的安装流程安装时出现的一些错误,总结如下:
 
错误1:
Error fetching http://ruby.taobao.org/:
bad response Not Found 404 (http://ruby.taobao.org/specs.4.8.gz)
 
解决方案:把安装流程中的指令
$ gem sources -a http://ruby.taobao.org/
改为:

$ gem sources -a https://ruby.taobao.org/
 
错误2:
ERROR:  While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/pod
 
解决方案:苹果系统升级OS X EL Capitan后会出现的插件错误,将安装流程4中的安装CocoaPods的指令$ sudo gem install cocoapods,改为:
$ sudo gem install -n /usr/local/bin cocoapods
 
错误3:
[!] Unable to satisfy the following requirements: - `AVOSCloud (~> 3.1.6.3)` required by `Podfile`
Specs satisfying the `AVOSCloud (~> 3.1.6.3)` dependency were found, but they required a higher minimum deployment target.
 
解决方案:安装流程:Podfile文件中 platform:ios, ‘6.0’  后边的 6.0 是平台版本号 ,一定要加上
 
错误四:
pod setup非常慢:
解决方案:在GitHub上找到Specs后fork到自己的工程,然后使用工具GitHub Desktop工具把Specs下载下来,更名成master,替换路径~/.cocoapods/repos目录下的master,就可以正常使用了。
 
错误五:
pod search失败:
解决方案:
 
错误六:
pod search后出现Creating search index for spec repo 'master'.. Done!的情况
解决方案:
 
错误七:
gem报错:
$ gem --version  
 
解决方案: 返回结果失败,那么可能的原因是电脑里面存在两个gem,删除只剩一个就好了,如下:
$ where gem
 
即可找到gem的地址,对应删除不必要的gem。
 
错误八:
Podfile.lock里面的PODFILE CHECKSUM和别人的不一样:
checksum是通过SHA-1算法算出来的。通过它可以确保多人协作的时候,大家使用的是相同版本的第三方库。
 
解决方案:如果你的CHECKSUM和别人的不一样,很可能是你pod版本的问题,那么对应做pod版本的升降级。
可参考我的repo,把脚本clone下来,然后改一下你要变成的版本执行一下即可。

cocoaPods安装爬坑总结的更多相关文章

  1. mac M1 php扩展 xlswriter 编译安装爬坑记录

    电脑配置 MacBook Pro(14英寸,2021年) 系统版本 macOS Monterey 12.4 芯片 Apple M1 Pro PHP环境 MAMP Pro Version 6.6.1 ( ...

  2. gdb插件gef安装爬坑

    0x00: gdb是linux下的调试利器,但无奈界面不太友好,所以需要一些辅助插件. 0x01:关于插件选择 之前我一直使用的是pead,之前了解到还有个插件gef,因为gef支持多构架,而且hea ...

  3. Freeswitch 安装爬坑记录1

    2 Freeswitch的安装 2.1 准备工作 服务器安装CentOS 因为是内部环境,可以关闭一些防火墙设置,保证不会因为网络限制而不能连接 关闭防火墙 查看防火墙 systemctl statu ...

  4. kali linux安装virtualbox虚拟机之爬坑经历

    很多kali爱好者想把kali linux作为系统使用,但是有些win下的程序有时候也需要用到,此时需要虚拟机. kali系统在安装虚拟机的时候也会遇到一大堆坑,接下来是我的爬坑过程. 一波三折. 环 ...

  5. 【爬坑系列】之kubernetes环境搭建:二进制安装与镜像安装

    准备: 网上教如何编译与安装kubernetes的教程很多,需要提前准备的也很多,比如关闭selinux,防火墙啦....但有一点一定要注意,编译kubernetes源码时要求有2G内存,这个可是实打 ...

  6. 【转载】python3安装scrapy之windows32位爬坑

    python3安装scrapy之windows32位爬坑 原创 2016年11月06日 01:38:08 标签: scrapy / windows / python / 开源框架 / 网络爬虫   早 ...

  7. centos7安装Mysql爬坑记录

    centos7安装Mysql爬坑记录   查看是否已安装 使用下列命令查看是否已经安装过mysql/mariadb/PostgreSQL 如果未安装,不返回任何结果(ECS的centos镜像默认未安装 ...

  8. CocoaPods安装遇到的坑。

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

  9. CocoaPods的那些坑

    CocoaPods的那些坑 文章转自http://blog.csdn.net/zhanniuniu/article/details/52159362#comments 我跟博主的经历超级像!不过自己用 ...

随机推荐

  1. [ERROR] --gtid-mode=ON or UPGRADE_STEP_1 or UPGRADE_STEP_2 requires --log-bin and --log-slave-updates

    centos7.5 做基于GTID的主从重启从库报错 问题: [root@db01-51 ~]# tail -50 /application/mysql/data/db01-51.err 2019-0 ...

  2. 【新特性】JDK10

    一.局部变量类型推断 很多人抱怨Java是一种强类型,需要引入大量的样板代码.甚至在这些情况下,给定好变量名,通常很清楚发生了什么,明显类型声明往往被认为是不必要的.许多流行的编程语言都已经支持某种形 ...

  3. combineReducers

    const reactInit = '@@react/Init' const combineReducers = (reducers) => { const finalReducers = {} ...

  4. javascript 之 面向对象【创建对象】

    创建对象 (1) 工厂模式 function createPerson(name, age, job){ var o = new Object(); o.name = name; o.age = ag ...

  5. Python游戏编程入门4

    Math和Graphics:Analog Clock示例程序本章介绍Python的math模块,该模块可以执行计算,如常见的三角正弦函数.余弦函数.正切函数等. 使用正弦和余弦函数绘制圆创建Anlog ...

  6. C语言--第1次作业

    1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量学习体会 1.2.1学习体会 经过一周C语言的正式课堂学习,不同于暑期时扒视频囫囵吞枣式学习,林丽老师的讲解详细异常,尽管已经学习了一部分内 ...

  7. GTID做mysql主从时报错

    今天在做主从同步时,显示slave_IO线程为NO ,并且报如下错误 Slave_IO_Running: No ... Last_IO_Error: Fatal error: The slave I/ ...

  8. vue ui 启动,浏览器报错Unexpected token <

    可能的解决办法: 选择清空缓存并硬性重新加载页面. 如果不行,全局卸载@vue/cli,重新安装.

  9. ConcurrentHashMap为何不会出现ConcurrentModificationException异常

  10. object的wait()、notify()、notifyAll()、方法和Condition的await()、signal()方法

    wait().notify()和notifyAll()是 Object类 中的方法 从这三个方法的文字描述可以知道以下几点信息: 1)wait().notify()和notifyAll()方法是本地方 ...