1、安装CocoaPods

1.00、参考

CocoaPods 文档

卸载: https://www.jianshu.com/p/8b61b421dd76

1.01、是否已安装

which pod

1.1、升级gem命令

sudo gem update --system

1.2、切换CocoaPods安装源

gem sources -l

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

gem source -a https://gems.ruby-china.com

##gem sources -a https://ruby.taobao.org/ 停用

gem sources -l

1.3、安装CocoaPods

sudo gem install cocoapods

如果有如下错误,则:

ERROR:  While executing gem ... (Errno::EPERM)
    Operation not permitted - /usr/bin/xcodeproj
在终端中输入:sudo nvram boot-args="rootless=0"; sudo reboot
电脑重启
sudo gem install cocoapods -V 

如果还不行

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

OS X EI Capitan 10.11 & xcode 7.0 beta(7A120f) -- cocoapods安装失败

1.4、查询某SDK信息

pod search ...

1.5、更新本地CocoaPods源列表

pod repo update

1.6、清除 CocoaPods 本地缓存

特殊情况下,由于网络或者别的原因,通过 CocoaPods 下载的文件可能会有问题。

这时候您可以删除 CocoaPods 的缓存(~/Library/Caches/CocoaPods/Pods/Release目录),再次导入即可。

1.7、查看当前使用的 SDK 版本

您可以在 Podfile.lock 文件中看到您工程中使用的 SDK 版本。

1.8、 警告、错误

[!] Your Podfile has had smart quotes sanitised. To avoid issues in the future, you should not use TextEdit for editing it. If you are not using TextEdit, you should turn off smart quotes in your editor of choice.

出现这个警告,说明里面的文本的“引号”,用的不是英文,必须改过来,重新下载。

1.9、指定版本

CocoaPods 中,有几种设置 SDK 版本的方法。如:

  • '>= 2.4.X' 会根据您本地的 CocoaPods 源列表,导入不低于 2.4.X 版本的 SDK。
  • '~> 2.4.X' 会根据您本地的 CocoaPods 源列表,介于 2.4.X~2.5.0 之前版本的 SDK。

2、安装ReactiveCocoa

2.1、新建工程

2.2、导入ReactiveCocoa

2.2.1、关闭工程

2.2.2、终端切换到工程目录

pod search ReactiveCocoa :搜索本地缓存的框架。

pod repo update(推荐)或者pod setup将远程仓库的框架信息更新到本地

2.2.3、配置文件Podfile

vi Podfile

platform :ios,'8.0'

pod 'ReactiveCocoa'

按esc键输入Shift“ :wq”

注意:高版本的cocoapods 可能要改变添加方式:

platform :ios, '8.0'
target "targetName" do
pod 'ReactiveCocoa'
end

否则报错:is not used in any concrete target

2.2.4、下载框架

pod install

2.2.5、打开程序

工程目录下会多一个xcworkspace文件,打开它就可以了

2.3、工程配置

2.3.1、添加引用库(新版本应该已经自动添加)

打开 Build Phases->Link Binary With Libraries

添加 libReactiveCocoa.a

2.3.2、添加头文件路径      (新版本应该不需要)

打开 Build Settings->Search Paths

$(BUILD_ROOT)/../IntermediateBuildFilesPath/UninstalledProducts/include

或者

$(OBJROOT)/UninstalledProducts/include

2.3.4、添加编译选项(新版本应该已经自动添加)

在“Other Linker Flags” 添加 -ObjC

2.3.5、引用框架

在工程的pch中 将RAC的头文件加进去

#import <ReactiveCocoa/ReactiveCocoa.h>

引用pch示例

CocoaPods ReactiveCocoa 学习实践一 之 配置环境的更多相关文章

  1. 寒假学习进度一(安卓配置环境的搭建和hello world)

    今天学习内容:观看了哔哩哔哩上的安卓教学视频,简单了解下了安卓的基本知识 具体内容: 一.配置安卓开发环境(安装Android studio,配置JDK) Android studio是个集成环境,不 ...

  2. 百度地图开发的学习(一)——配置环境&基础地图

    由于项目需求缘故,最近在学习Android地图的开发,所以就记录一下学习过程.最近都会陆续更新啦.目前使用百度地图API的挺多的,所以就先以它为基础学习一些地图的调用. 一.AK的申请 与web开发不 ...

  3. 【工具篇】Selenium 学习实践(一)环境搭建

    一.环境搭建 (1)初学者最佳环境: Python 2.7 + Selenium 2+ Firefox 46 (2)喜欢尝新的环境: Python 3.6 + Selenium 3+ Firefox ...

  4. MySQL学习笔记——安装及配置环境

    1.安装的版本为mysql-5.6.24-win32.1432006610压缩版 查看教程http://jingyan.baidu.com/article/f3ad7d0ffc061a09c3345b ...

  5. Hadoop配置环境变量Program~2的用法

    [学习笔记] 3)配置环境变量:(环境变量中的~1,~2,~3的用法)i)JAVA_HOME:注意C:\Program Files目录存在空格,变成C:\Progra~1\Java\jdk1.8.0_ ...

  6. Nagios学习实践系列——配置研究[监控当前服务器]

    其实上篇Nagios学习实践系列——基本安装篇只是安装了Nagios基本组件,虽然能够打开主页,但是如果不配置相关配置文件文件,那么左边菜单很多页面都打不开,相当于只是一个空壳子.接下来,我们来学习研 ...

  7. google protobuf学习笔记:windows下环境配置

    欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/45371743 protobuf的使用和原理,请查看:http:/ ...

  8. oracle学习笔记——配置环境

    题记:最近再学oracle,于是按照这本经典的书<Oracle Database 9i/10g/11g编程艺术>来学习. 配置环境 如何正确建立SCOTT/TIGER演示模式 需要建立和运 ...

  9. 基于OpenNetVM配置环境的发包实践

    参考: openNetVM 基于OpenNetVM配置环境的发包实践 注意:本文并未对OpenNetVM的服务链进行测试,而是在借助OpenNetVM脚本环境的情况下,分别对Pktgen和MoonGe ...

随机推荐

  1. 自己用wireshark 抓了个包,分析了一下

    我自把对应 ip 包的头部拿出来手动分析了一下 :)

  2. 智力大冲浪(riddle)

    智力大冲浪(riddle) 题目描述 小伟报名参加中央电视台的智力大冲浪节目.本次挑战赛吸引了众多参赛者,主持人为了表彰大家的勇气,先奖励每个参赛者m元.先不要太高兴!因为这些钱还不一定都是你的?!接 ...

  3. QT中LineEdit、TextEdit 、PlainTextEdit 三个控件的区别

    QLineEdit是单行文本输入,一般用于用户名.密码等少量文本交互地方.QTextEdit用于多行文本,也可以显示HTML格式文本.QPlainTextEdit与QTextEdit很像,但它多用于需 ...

  4. API 友好

    API友好 新版ThinkPHP针对API开发做了很多的优化,并且不依赖原来的API模式扩展. 数据输出 新版的控制器输出采用Response类统一处理,而不是直接在控制器中进行输出,通过设置defa ...

  5. django 中文乱码问题

    在使用JS 发送ajax到django后台的时候,可能会出现中文乱码问题 解决方案: 所有的HTMl 和py文件都使用utf-8编码,在创建数据库的时候指定使用utf8 :create databas ...

  6. OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波

    http://blog.csdn.net/chenyusiyuan/article/details/8710462 OpenCV学习笔记(27)KAZE 算法原理与源码分析(一)非线性扩散滤波 201 ...

  7. javascript 函数 add(1)(2)(3)(4)实现无限极累加 —— 一步一步原理解析

    问题:我们有一个需求,用js 实现一个无限极累加的函数, 形如 add(1) //=> 1; add(1)(2)  //=> 2; add(1)(2)(3) //=>  6; add ...

  8. html中DIv并排显示问题

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD ...

  9. Linux下VNC配置多个桌面和修改密码 不会当系统重启vnc失效

    1:vncserver 2:iptables -I INPUT -p tcp --dport 5901 -j ACCEPT   客户端方式 3:iptables -I INPUT -p tcp --d ...

  10. js优化与注意点

    1.使用尽可能少的全局变量.尽量用var来声明变量,避免隐式使用全局变量. 隐式全局变量和明确定义的全局变量间有些小的差异,就是通过delete操作符让变量未定义的能力. 通过var创建的全局变量(任 ...