ruby 安装记2018

ruby 安装

官方文档

RVM 安装 (通过rvm进行安装及管理ruby)

  • 安装前先安装:

    $ brew install gnupg gnupg2
    
  • 开始安装rvm

    $ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
    $ curl -sSL https://get.rvm.io | bash -s stable --ruby
    $ source ~/.bashrc
    $ source ~/.bash_profile
    

rvm离线安装方式:
https://rvm.io/rvm/offline

  • 修改 RVM 的 Ruby 安装源到 Ruby China 的 Ruby 镜像服务器,这样能提高安装速度

    $ echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db
    

Ruby 的安装与切换

  • 列出已知的 Ruby 版本

    $ rvm list known
    
  • 安装一个 Ruby 版本

    这里安装了最新的 2.2.0, rvm list known 列表里面的都可以拿来安装。

    $ rvm install 2.2.0 --disable-binary
    
  • 切换 Ruby 版本

    $ rvm use 2.2.0
    
  • 如果想设置为默认版本,这样一来以后新打开的控制台默认的 Ruby 就是这个版本

    $ rvm use 2.2.0 --default 
    
  • 查询已经安装的ruby

    $ rvm list
    
  • 卸载一个已安装ruby版本

    $ rvm remove 1.8.7
    


附:RVM卸载方法

$ rvm implode
  • 执行上面的命令后,最后的输出内容如下:表示成功了

    removed, Note you may need to manually remove /etc/rymrc and ~/.rvmrc if they exist still
    
  • 为了保险起见还需要执行下面的命令(在自己的Users目录中删除rvm相关文件):

    $ cd ~ ; sudo rm -rf .rvm .rvmrc /etc/rvmrc
    
  • 再确认下文件是删除干净,否则手动删除残留文件,如下两个目录

    • /Users/你的电脑名字/.rvm
    • /Users/你的电脑名字/.rvmrc
  • 最后更新下source文件:

    • 分别打开:.bashrc 、 .bash_profile 、 .profile文件

    • 在文件中找到如下语句,并用#注释掉:

       #[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function
    

    上面三个文件在/Users/你的电脑名字/...目录下,
    并且是隐藏文件,需要显示隐藏文件还能看到
    显示:defaults write com.apple.finder AppleShowAllFiles -bool true
    隐藏:defaults write com.apple.finder AppleShowAllFiles -bool false


rvm、ruby安装时遇到的相关错误及当时的解决方法:

  1. RVM is not a function, selecting rubies with 'rvm use ...' will not work.

    今天在使用rvm 2.4.0 --default设置默认的ruby的命令时出现
    RVM is not a function, selecting rubies with 'rvm use ...' will not work.
    查看官方的使用帮助之后发现是缺少了加载rvm的命令,需要更新rvm的source

    解决方案如下:
    执行命令:

    $ source ~/.rvm/scripts/rvm
    

    接下来重新设置rvm默认版本:

    $ rvm use 2.4.0 --default
    

    执行后,提示如下信息:

    Using /home/xxxxx/.rvm/gems/ruby-2.4.0-p448

    说明成功了,再查看下ruby的版本:

    $ ruby -v
    

    执行后,提示如下信息:

    ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin17]

    最后将rvm的命令添加到.bashrc source中:

    [html] view plain copy
    [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
    
  2. ERROR: '/usr/local/bin' is not writable - it is required for Homebrew, try 'brew doctor' to fix it!

    执行rvm install ruby-2.4.0的时候报错:ERROR: '/usr/local/bin' is not writable - it is required for Homebrew, try 'brew doctor' to fix it!
    具体原因还不知道

    解决方案
    执行命令:

    $ rvm autolibs read-only # read more here:https://rvm.io/rvm/autolibs
    

    再重新执行安装的命令,成功了:

    $ rvm install ruby
    
  3. brew提示cannot load such file mach

    这个问题可能由于MacOS从10.11升级到10.12所导致,运行brew命令会提示如下错误:/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:inrequire': cannot load such file -- mach (LoadError)

    首先打开终端进入 /usr/local路径,如果你的brew不是按照在如上路径,则进入如下目录:

    $ brew --prefix
    

    运行git status命令,如果Homebrew是dirty的,则运行如下命令:

    $ git reset --hard && git clean -df
    

    然后运行如下两个命令:

    $ brew doctor
    $ brew update
    

    然后brew会提示你因为用的是10.12运行时会报如下警告:

    Formula file is modified!
    

    所以需要安装以下几个包:

    $ brew install gtk-mac-integration libepoxy py2cairo pygobject pygtk
    

    我是做到这一步就ok了,如果brew还报错误,你可以尝试如下两条命令:

    $ sudo rm /System/Library/Frameworks/Ruby.framework/Versions/Current
    sudo ln -s /System/Library/Frameworks/Ruby.framework/Versions/1.8 /System/Library/Frameworks/Ruby.framework/Versions/Current
    

    此解决方案参考链接


附 [cocopods 删除重新安装]

一、全新安装前,先检查是否有安装残留
1、如果之前装过cocopods,最好先卸载掉,卸载命令:

$ sudo gem uninstall cocoapods

2、先查看本地安装过的cocopods相关东西,命令如下:

$ gem list --local | grep cocoapods

会显示如下:

cocoapods-core (0.39.0)
cocoapods-downloader (0.9.3)
cocoapods-plugins (0.4.2)
cocoapods-search (0.1.0)
cocoapods-stats (0.6.2)
cocoapods-trunk (0.6.4)
cocoapods-try (0.5.1)

然后按下方式逐个删除吧:

$ sudo gem uninstall cocoapods-core
// Mac系统到macOS High Sierra后请使用下面命令:
$ sudo gem install -n /usr/local/bin cocoapods
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容