本文主讲,Mac中使用gem命令来安装、移除某个Ruby库。
我是做iOS开发的,经常会用到CocoaPods,不了解CocoaPods的,我建议去官网( https://cocoapods.org )看看,相对来说是全面的。
首先,简单介绍下背景。
RubyGems(简称 gems)是一个用于对 Ruby组件进行打包的 Ruby打包系统。 它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具。Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/ )源来查找、安装、升级和卸载软件包,非常的便捷。
本文基于你的Mac已经安装了RVM、李简Ruby(自带Gem)环境。
先查看你已经安装了哪些Ruby库,终端中 gem list
以哪核裤我的电脑为例,效果如下图所示:
使用gem来安装Ruby库,有两种方式。
1、gem install libName -v versionNumber
比如:gem install cocoapods-packager -v 1.5.0
2、sudo gem install libName -v versionNumber
比如:sudo gem install cocoapods -v 1.2.1
如果gem install cocoapods-packager,默认会安装最新版本,建议查看好你需要的版本再安装。
相对应的,移除某个Ruby库,也有两种方氏昌法,需注意的是怎么安装的,怎么移除。
1、gem uninstall libName -v versionNumber
比如:gem uninstall cocoapods-packager -v 1.5.0
2、sudo gem install libName -v versionNumber
比如:sudo gem uninstall cocoapods -v 1.2.1
redis-cluster安装需要通过gem install redis来安装相关依赖。否则报错。通过gem install redis执行后会出现两个问题:
1、缺少zlib依赖
问题:
ERROR: Loading command: install (LoadError)
cannot load such file -- zlib
ERROR: While executing gem ... (NoMethodError)
undefined method 'invoke_with_build_args' for nil:NilClass
解决:
通过yum install zlib-devel 安装zlib库
然后集成zlib库到ruby环境
cd /usr/local/ruby-2.2.7/ext/zlib
ruby extconf.rb
重要:ext/openssl/Makefile 增加 top_srcdir = ../..
//这一步如果不修改,make时会爆团陵出另外一个塌拦戚错误
//make:*** No rule to make target '衡简/include/ruby.h', needed by 'zlib.o'. Stop
make &&make install
2、缺少openssl库
问题:
ERROR: While executing gem ... (Gem::Exception)
Unable to require openssl, install OpenSSL and rebuild ruby (preferred) or use non-HTTPS sources
解决:
通过yum install openssl-devel 安装openssl库
然后集成到ruby环境
cd /usr/local/ruby-2.2.7/ext/zlib
ruby extconf.rb
重要:ext/openssl/Makefile 增加 top_srcdir = ../..
//修改Makefile中的$(top_srcdir)为../..
make &&make install
再次运行gem install redis,出现下图则表示安装成功
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)