我是如何解决 Mac 升级后 ruby 报错的?

240
原文链接: mp.weixin.qq.com

快,关注这个公众号,一起涨姿势~

背景

近期苹果推出 Mac OS 推出了新的版本 High Sierra,端端君作为软件升级强迫症患者看到后立即就升级了。更新时间倒是不长,大约半个小时左右,但是当端端君准备开发的时候就出情况了。由于我使用了 CSS 的预编译器 SASS,就报出了错。

机智的端端君首先跟同事打听打听,发现他们最近也遇到了同样的问题,解决的过程也挺波折的。我收到的反馈大致就是 ruby 版本不匹配。因为之前端端君也做过一阵 ruby 开发,想想确实是这样, Mac 自带的那个版本确实很坑,最好是安装一个新的,但是最好不要卸载自带的那版。

首先我先升级 ruby。 ruby 有一个版本管理工具叫 rvm ,用它来进行 ruby 版本管理,安装比较方便。

我首先在命令行输入以下命令:

$ \curl -sSL https://get.rvm.io | bash -s stable

$ source ~/.bashrc

$ source ~/.bash_profile

然后检测一下 rvm 是否安装成功,执行

rvm –v

如果输出如下,证明 rvm 安装成功

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

然后通过 rvm 安装新的版本的ruby

rvm install ruby-2.4

然后再看下 ruby 的版本

ruby –v

ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-darwin17]

这时,端端君以为问题就至此解决了,运行下之前的命令,发现还是报同样的错。

于是就把去谷哥搜了搜,可能是 Mac 最近才更新的版本,答案并不多。搜出来的问题大都是和 cocoapods 有关的。      其中一个靠谱一些。

Cocoapods 是一个 ruby 的 gem ,端端君 在想我报的错是 compass ,它也是一个 ruby 的 gem ,是不是同样的问题?貌似我在接近真相!

 

首先,端端君查了一下 gem install –n 是啥意思

咦,我大致明白了,就是指定一个包的安装目录,之前报错不也是在提示在那个位置找不到文件吗?

 

真相越来越近!

 

此时端端君已经按捺不住内心的冲动,以迅雷不及掩耳之势敲出了如下命令

 gem install –n /usr/local/bin compass

问题至此解决!

 

希望解决方案对你们有用,Happy coding~

欢迎关注,获取更多私密硬货,

一起成长!