10.11 安装pod

 
原文地址:http://www.jianshu.com/p/5fc15906c53a  感谢。
 
更新升级10.11 cocoapods安装出问题最简单的解决方法

这是因为10.11把cocoapods直接干掉了

sudo gem install -n /usr/local/bin cocoapods
再加一句,完美解决
sudo xcode-select --switch /Applications/Xcode.app

使用CocoaPods做依赖管理,使我们的工程更加自动化的、集中的、简单直观的管理第三方开源库。你不用下载开源库的源代码引入工程,不用向工程中添加Framework,不用解决开源库和开源库以及开源库和工程之间的依赖、重复问题,也不用管开源库更新等一系列问题。有了CocoaPods,你只管任性,CocoaPods会为你做好一切。

更新Ruby

你需要会简单的使用命令行工具
CocoaPods唯一的限制就是在Ruby下运行,现在OS X都预装了Ruby,所以你只需要更新RubyGems到最新版本。
打开终端(control + space 真的很好用),然后输入如下的命令:

sudo gem update --system

会要你输入密码:
注意在终端中密码不显示字符,只要输完后按回车即可
用淘宝替换Ruby的默认源,替换命令如下:

gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
gem sources -a http://ruby.taobao.org/
//验证是否替换成功可以执行
gem sources -l

如图所示则证明替换成功

安装CocoaPods

在终端中输入如下命令:

sudo gem install cocoapods

安装过程是这样的:


安装完成如上图所示

在终端中输入如下命令来完成安装:

//将 CocoaPods Specs repository复制到你电脑上~/.cocoapods目录下
pod setup

它需要一点时间来完成,你等就是了
如果安装失败 ~/.cocoapods 里面是空的,就需要重新setup
命令如下:

pod repo remove master  
pod setup

完毕之后这个文件夹大概有 100多M,需要花费比较多时间,请耐心等待。
到这里你已经成功安装了CocoaPods!

创建配置Podfile

Xcode新建一个HelloWorld工程
打开终端,进入HelloWord工程目录下:

//工程的路径也可以直接拖进来     
cd /Users/lifupeng/Desktop/HelloWorld

在HelloWorld工程下创建一个默认的Podfile
执行命令:

pod init

用Xcode打开Podfile命令:

open -a Xcode Podfile

Podfile是这样的:


Xcode打开Podfile

修改类库支持的最低iOS版本

# platform:ios, "6.0"修改成 #platform :ios, "7.0"
告诉CocoaPods你的工程是运行在iOS7下

为了让CocoaPods的引入不显示警告,在Podfile最上方加上:

inhibit_all_warnings!
// 也可以单独设置打开编译警告就好了
pod 'Alamofire', '~> 3.0.0-beta.3', :inhibit_warnings => true

最后Podfile配置是这样的:


Podfile配置

搜索第三方开源库

以搜索AFNetworking为例,搜索命令如下:

pod search AFNetworking

搜索结果如下:


pod search AFNetworking结果


把下面内容:

pod 'AFNetworking', '~> 2.5.0'

添加到Podfile中

target 'HelloWorld' dopod 'AFNetworking', '~> 2.5.0' end

然后保存关闭

安装开源库到你的工程中。

在终端中输入下面命令:(确保在终端的路径在项目目录下):

pod install

至此 你已经成功的把AFNetworking添加到工程中了
[!] From now on use `ShowTracker.xcworkspace`

正如上面的警告提醒,从现在开始,你必须使用HelloWorld.xcworkspace来打开该项目。

为了让CocoaPods的引入不显示警告,在Podfile最上方加上:

inhibit_all_warnings!

重新运行pod install,编译项目,此时你应该看到警告已经不显示了。

PS: 对Podfile修改安装之后编译项目,可能会出现如下警告 :

   The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.

此时,正确的做法是:

1.Project Cleanup
2.Remove all libPods*.a in  Linked Frameworks and Libraries
3.Update CocoaPods using the command pod install

测试:
添加 #import <AFNetworking.h>头文件
从此引用第三方库如此简单,希望各位用的爽

CocoaPods常用命令

1、pod install

根据Podfile文件指定的内容,安装依赖库,如果有Podfile.lock文件而且对应的Podfile文件未被修改,则会根据Podfile.lock文件指定的版本安装。
每次更新了Podfile文件时,都需要重新执行该命令,以便重新安装Pods依赖库。

2、pod update

若果Podfile中指定的依赖库版本不是写死的,当对应的依赖库有了更新,无论有没有Podfile.lock文件都会去获取Podfile文件描述的允许获取到的最新依赖库版本。

3、pod search

命令格式为:

$ pod search AFNetworking  AFNetworking为参数

4、查看版本

pod --version

5、卸载 cocoapods

sudo gem uninstall cocoapods

今天比较闲,就把CocoaPods升级到0.36.0正式版(以前写Swift的时候用的预览版)。然后就郁闷了,不管安装什么第三方都会出现类似于:
[!] Unable to satisfy the following requirements: - `AFNetworking (~> 2.5.1)

 一通的搜索后找到原因,因为GFW的缘故。解决方法:
pod repo remove master
pod repo add master https://gitcafe.com/akuandev/Specs.git
pod repo update

转载于:https://www.cnblogs.com/penn-wang/p/5007805.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/458608.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows任务管理器中的工作设置内存,内存专用工作集,提交大小详解

通俗的讲工作设置内存是程序占用的物理内存(包含与其他程序共享的一部分), 内存专用工作集是程序独占的物理内存, 提交大小是程序独占的内存(包含物理内存和在页面文件中的内存). 注:页面文件就是存放不在物理内存中的内存,文件路径一般在C:\pagefile.sys,目的是为了能够让更…

coreData mapView #include

一、coreData 需要导入系统库CoreData 新建文件的时候选core data 中的Data Model 然后加相应的表 加完表后 在Model.xcdatamodeld中新建文件 选coredata中的第三个 即可 如果两个表有联系 就将附表放到主表中 在build Setting中&#xff0c;输入search 在Framework Searc…

浅谈 C++ 中的 new/delete 和 new[]/delete[]

来自&#xff1a;http://www.cnblogs.com/hazir/p/new_and_delete.html 在 C 中&#xff0c;你也许经常使用 new 和 delete 来动态申请和释放内存&#xff0c;但你可曾想过以下问题呢&#xff1f; new 和 delete 是函数吗&#xff1f;new [] 和 delete [] 又是什么&#xff1f…

JavaScript中的原型继承原理

在JavaScript当中&#xff0c;对象A如果要继承对象B的属性和方法&#xff0c;那么只要将对象B放到对象A的原型链上即可。而某个对象的原型链&#xff0c;就是由该对象开始&#xff0c;通过__proto__属性连接起来的一串对象。__proto__属性是JavaScript对象中的内部属性&#xf…

XMPP

XMPP不支持视频聊天 支持文字聊天 但对于图片和语音聊天支持的不好 那么就将他们转成NSData的形式 IM Instance Message 即时聊天 聊天系统中 XMPP主要做两个人的聊天和群聊&#xff0c;只用了这两个功能 还有一个HTTP的服务器 &#xff0c;他是一个旁路服务器 XMPP底层…

QT 调试

QT调试&#xff08;参考下面的说明就可以正常调试&#xff09;&#xff1a;http://blog.csdn.net/wchengshen/article/details/50254731http://blog.csdn.net/sx341125/article/details/53606534 QT调用DLL&#xff1a; Qt中调用VS编译dll的方法(一)----显式调用 qt使用动态库(…

建模元件有哪些在MapleSim中

信号库&#xff1a;包含通用信号模块、布尔、控制器、离散信号模块、信号源、线性信号模块、非线性信号模块、时间离散信号模块、查询表、信号转换器、数学运算、关系元件、特殊信号模块&#xff0c;应用案例。 电子库&#xff1a;包含电阻、运算放大器、二极管、步进电机、模拟…

iOS小笔记

controller&#xff1a;连接二者的桥梁&#xff1b;cocoa frameworks 有两个框架&#xff1a;foundationfoundation 是cocoa中最基本的一些类&#xff1b;再mac应用程序中负责对象管理&#xff0c;内存管理&#xff0c;容器等相关数据&#xff1b;uikit&#xff1a;uikit&…

【C++】VS2010将写好的程序打包成安装文件发布

参考链接&#xff1a;http://blog.csdn.net/yongh701/article/details/51326142 我们可以将自己写好的VS2010程序打包成安装文件&#xff0c;给用户安装&#xff0c;具体步骤如下&#xff1a; 1、如下图&#xff0c;同样是新建一个项目&#xff0c;但是这次是新建一个其它项目…

01_jeecms建站

一、环境安装 JDK5TOMCAT5.5MYSQL5及以上http://www.jeecms.com/tutorial/index.jhtml参考环境安装篇二、解压文件安装包jeecms-v5zip,如图图1ROOT文件夹复制放到tomcat下的webapps文件夹&#xff08;注&#xff1a;请先删除webapps下原有的默认ROOT文件夹&#xff09;如不想部…

WiFi基本知识

转自&#xff1a;http://blog.csdn.net/myarrow/article/details/7930131 1. IE802.11简介 标准号IEEE 802.11bIEEE 802.11aIEEE 802.11gIEEE 802.11n标准发布时间1999年9月1999年9月2003年6月2009年9月工作频率范围2.4&#xff0d;2.4835GHz 5.150&#xff0d;5.350GHz5.475&a…

iOS各种小理论知识

Objective-C 部分 1. 你如何理解 OC 的内存管理 OC 内存管理是基于引用计数。谁想使用某个对象 B,就要把对象 B 的计数器1,如果不 使用这个对象了,那么就把对象 B 计数器-1,如果 B 对象计数器减到 0,那么 B 对象自动会调用自己的 dealloc 函数,也就是这个对象被销毁。 一…

libev 宏展开

想看源码&#xff0c;宏太多&#xff0c;看着累&#xff0c;宏展开&#xff0c;再看&#xff0c;功力时间不够&#xff0c;先放下 放上宏展开后的代码。 libev4.20 展开方示为 ./configure 修改makefile文件&#xff0c;字符串 替换CC为 CPP 注意要把基础的CC定义保留 make mv …

FreeRTOS高级篇7---FreeRTOS内存管理分析

原文&#xff1a;http://blog.csdn.net/zhzht19861011/article/details/51606068 内存管理对应用程序和操作系统来说都非常重要。现在很多的程序漏洞和运行崩溃都和内存分配使用错误有关。 FreeRTOS操作系统将内核与内存管理分开实现&#xff0c;操作系统内核仅规定了必要的内…

笔试题

1.是不是一个父类写了一个virtual 函数&#xff0c;如果子类覆盖它的函数不加virtual ,也能实现多态? virtual修饰符会被隐形继承的。private 也被集成&#xff0c;只事派生类没有访问权限而已。virtual可加可不加。子类的空间里有父类的所有变量(static除外)。同一个函数只存…

FreeRTOS学习笔记——互斥型信号量

来自&#xff1a;http://blog.csdn.net/xukai871105/article/details/43456985 0.前言 在嵌入式操作系统中互斥型信号量是任务间资源保护的重要手段。下面结合一个具体例子说明FreeRTOS中的互斥型信号量如何使用。 【相关博文】 【FreeRTOS STM32移植笔记】 【FreeRTOS学习笔记…

JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apache/IIS的整合)

链接地址&#xff1a;http://www.cnblogs.com/dartagnan/archive/2011/03/25/2003426.html JSP动态网站环境搭建应用中的详细步骤(Tomcat和Apache/IIS的整合)sun推出的JSP&#xff08;Java Server Pages&#xff09;是一种执行于服务器端的动态网页开发技术&#xff0c;它基于J…

关于JS获取select值的两种实现方法

前几天发了一篇关于javascript获取select值的方法&#xff0c;后来发现有另一种实现方法&#xff0c;所以就都发出来比较一下&#xff1a; 方法一&#xff1a;通过获取option标签的value值来确定&#xff1a; <!DOCTYPE html> <html> <head><meta charset…

c语言题库1

1. 用预处理指令#define 声明一个常数&#xff0c;用以表明1年中有多少秒&#xff08;忽略闰年问题&#xff09; #define time (365*24*60*60) #define SECONDS_PER_YEAR (60 * 60 * 24 * 365) 2. 写一个“标准”宏MIN&#xff0c;这个宏输入两个参数并返回较小的一个。 #di…

FreeRTOS系列第19篇---FreeRTOS信号量

来自&#xff1a;http://blog.csdn.net/zhzht19861011/article/details/50835613 本文介绍信号量的基础知识&#xff0c;详细源码分析见《FreeRTOS高级篇6---FreeRTOS信号量分析》 1.信号量简介 FreeRTOS的信号量包括二进制信号量、计数信号量、互斥信号量&#xff08;以后简称…