-bash: rvm: command not found之刨根问底

本想着学习一下大神的关于即时通讯的项目,使用CocoaPods命令集成网络库的时出现以下错误

 

错误命令

 

这种情况下检查一下自己rvm环境

 

检查rvm环境.png


竟然找不到rvm环境,郁闷了。

后来想到,上周末重装系统后,本地的安装环境全都丢失。

我们在使用CocoaPods集成的时候,检查开发环境的正常顺序如下

 

Xcode --- HomeBrew --- RVM --- Ruby --- CocoaPods

Homebrew、Rvm、Ruby、CocoaPods 简介

· 1、官网及相关链接

Rvm 官网 : https://www.rvm.io/

Ruby 官网 :https://rubygems.org/

CocoaPods 官网 :https://cocoapods.org/

Rvm 安装指南 :https://rvm.io/rvm/install

Homebrew 官网 :http://brew.sh/index_zh-cn.html

ruby 镜像 - taobao:https://ruby.taobao.org/

ruby 镜像 - china:https://gems.ruby-china.org/

· 2、Homebrew 介绍

  • Homebrew 是一个软件包管理器,用于在mac上安装一些os x上没有的UNiX工具;类似于360软件管理器。

· 3、Rvm 介绍

  • Rvm 全称 Ruby Version Manager ,是安装和管理 ruby 的一种工具。
  • 摘录:RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.

· 4、Ruby 介绍

  • Ruby 是一种面向对象的脚本语言,简单易用,功能强大。能跨平台和可移植性好等等。其实就是种脚本语言。
  • Ruby 的软件源使用的是亚马逊的云服务,国内网络环境下载时可能会出现各种不稳定和超时,所以自带的需要翻墙,可以将 官方 ruby 源 替换成国内 淘宝 ruby 源(https://ruby.taobao.org/ )或者是由 China ruby 源 (https://gems.ruby-china.org/ )。据消息了解,2016.06 淘宝源 暂停维护了,建议使用 China ruby 源。

· 5、CocoaPods 介绍

  • CocoaPods 是 iOS 最常用的第三方类库管理工具,绝大部分有名的开源类库都支持 CocoaPods。
  • CocoaPods 是用 ruby 实现的,要想使用它首先需要有 ruby 的环境。幸运的是OS X系统默认已经可以运行 ruby 了。但是有时候 ruby 版本过低是无法正常支持 CocoaPods 的使用,所以需要先安装更新升级 rvm 和 ruby。

RVM的操作

  • 检查rvm安装环境

 

rvm -v

存在的情况下

 

 rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

不存在的情况下

 

-bash: rvm: command not found
  • 输出-bash: rvm: command not found之后,需要开始安装rvm

 

curl -L https://get.[rvm.io](http://rvm.io) | bash -s stable
  • 载入rvm环境

 

source ~/.rvm/scripts/rvm

安装完成后,重复上述检查操作

 

rvm -v

ruby的操作

  • 查询已知ruby环境

 

rvm list known

输出结果

 

输出结果.png

*安装ruby

 

rvm install 2.3.0

输出结果

 

安装ruby.png

 

出现问题

 

安装2.2.2版本.png


接下来,我们安装Terminal指定的版本

rvm install 2.2.2
  • 查询已知安装的ruby

 

rvm list
  • 查看当前ruby版本

 

ruby –v

查看当前ruby版本.png

  • 检查ruby源

 

gem sources -l

检查源.png

至此,ruby安装,可以愉快的去使用CocoaPods了。

补充操作

  • 移除源

 

gem sources --remove [https://rubygems.org/](https://rubygems.org/)

替换添加国内镜像源 ruby-china 源,因为上面已经提到国内镜像源 taobao 源 已经停止维护了,所以此处替换的是 ruby-china 源,且尽量确保只有一个 ruby-china 源

  • 添加替换源

 

gem sources --add https://gems.[ruby-china.org](http://ruby-china.org)
  • 升级更新

 

sudo gem update —system

CocoaPods的安装使用

这里不多介绍,code4app一篇文章总结的很完善了,如下:
CocoaPods安装和使用教程
安装成功之后如下
*

cocoapods安装成功.jpg


意外状况补充:

 

刨根问底,刨个稀烂

安装需要第三方库的时候,出现了以下错误

  • [!] Unable to find a specification for CocoaAysncSocket
    或者
  • [!] Unable to find a pod with name, author, summary, or description matching CocoaAysncSocket

执行 pod setup,将https://github.com/CocoaPods/Specs上的Specs项目clone到/Users/用户名/.cocoapods/repos目录下

 

pod setup 

还是错误的话,继续执行

 

rm ~/Library/Caches/CocoaPods/search_index.json 

删除~/Library/Caches/CocoaPods目录下的search_index.json文件

 

search.png

 

还是错误的话,集成指定的版本

 

platform :ios,"8.0"
target "cyCocoaSyncSocket" do
pod 'CocoaAsyncSocket', '~> 7.6.2'
end

常用命令

 

pod install

使用环境

  • 这个是第一次在工程里面使用pods的时候使用,并且,也是每次你编辑你的Podfile(添加、移除、更新)的时候使用。
  • 每次运行pod install命令的时候,在下载、安装新的库的同时,也会把你安装的每个库的版本都写在了Podfile.lock文件里面。这个文件记录你每个安装库的版本号,并且锁定了这些版本。
  • 当你使用pod install它只解决了pods里面,但不在Podfile.lock文件里面的那些库之间的依赖。对于在Podfile.lock里面所列出的那些库,会下载在Podfile.lock里面明确的版本,并不会去检查是否该库有新的版本。对于还不在Podfile.lock里面的库,会找到Podfile里面描述对应版本(例如:pod "MyPod", "~>1.2”)。

 

pod update

使用环境

  • 当你运行 pod update PODNAME 命令时,CocoaPods会帮你更新到这个库的新版本,而不需要考虑Podfile.lock里面的限制,它会更新到这个库尽可能的新版本,只要符合Podfile里面的版本限制。
  • 如果你运行pod update,后面没有跟库的名字,CocoaPods就会更新每一个Podfile里面的库到尽可能的最新版本。
  • 你应该使用pod update PODNAME去只更新某个特定的库(检查是否有新版本,并尽可能更新到新的版本)。对应的,你应该使用pod install,这个命令不会更新那些已经安装了的库。
  • 当你在你的Podfile里面添加了一个库的时候,你应该使用pod install,而不是pod update,这样既安装了这个库,也不需要去更新其它的已安装库。
    以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

 

pod install --verbose --no-repo-update

更新

 

pod update --verbose --no-repo-update

参考文章:
【iOS工具】rvm、Ruby环境和CocoaPods安装使用及相关报错问题解决



作者:叶小合
链接:https://www.jianshu.com/p/f5591af6859d
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sundaysme

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值