Mac下Ruby安装小结

作者: fasionchan | 来源:发表于2016-12-08 22:28 被阅读57次

    最近,重新拿起博客,发现已有一年多没有动过的Octopress跑不起来了,囧。并不意外,每次Mac一升级,总有一些东西会挂掉,久而久之习惯了。

    如何让Octopress重新跑起来呢?重新看安装文档,大头只是安装一个ruby而已。但是,由于对ruby并不熟悉,中间还是踩了个大坑。因此,有必要记一下,免得以后再犯。

    安装rbenv

    rbenv是什么鬼?

    我们知道,系统本来已经有一个ruby了,不信命令行运行which ruby看看。这个是系统自带的,一般版本都是极其老的。然而,我们在用一些软件环境时,却是需要某个特定版本的ruby的。这时,你可以选择重新编译一个,然后进行安装。问题是,安装到系统这个动作太暴力了,影响范围略大,可能会搞挂其他东西。如果可以安装多个版本的ruby,与系统独立,按需使用,那敢情好。rbenv就是这样的工具~

    好吧,那么要怎么安装呢?Mac下,一般用brew安装软件,rbenv也不例外:

    brew update
    brew install rbenv
    brew install ruby-build
    

    安装ruby

    rbenv完成安装后,ruby的安装就没有任何难度了:

    rbenv install 1.9.3-p0
    rbenv local 1.9.3-p0
    rbenv rehash
    

    好吧,这么说来,写这篇文章有什么意义呢?别急,下面不是还有一节嘛~

    上面的安装步骤正确操作完,我发现ruby缺不是用rbenv local选定的版本!我运行which ruby看到还是用系统的,什么鬼!

    确定rbenv没生效,但暂时不知道为什么。我猜rbenv应该是通过PATH环境变量生效的,但是看了一下并没有什么变化。rbenv help也看不到任何关于生效的内容,无奈只能Google了。

    F*ck!确实需要做点什么才能生效,rbenv init就是需要做的内容,但是rbenv help一个字也没提?

    $ rbenv init
    # Load rbenv automatically by appending
    # the following to ~/.bashrc:
    
    eval "$(rbenv init -)"
    
    

    shell下运行eval "$(rbenv init -)"后,再运行which ruby就看到确实生效了!这个操作最好根据指引放到.bashrc里,这样就不要要每次都要运行一遍。

    相关文章

      网友评论

        本文标题:Mac下Ruby安装小结

        本文链接:https://www.haomeiwen.com/subject/rcismttx.html