MacOS 升級High Sierra 導致Sass失效
前陣子的MacOS系統由於在安全上有個嚴重的疏失漏洞,而釋出了一份安全性更新。由於此更新是在High Sierra的系統下才會出現的,就在這個陰錯陽差之下不小心將系統往上更新到了MacOS High Sierra,意外地發現了這個問題。在更新之後,Sass壞了!?
※注意!此安全性漏洞建立在High Sierra系統下,如果你還處於Sierra之下,可不必更新。
如果是先前就已經安裝過Sass的人更新後,當你要使用compass watch指令時,可能會顯示以下錯誤訊息:
-bash:/usr/local/bin/sass:/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory |
(訊息可能會依照執行工具不同而有些不同)
而Google之後,大部分的解決方法都是說把Gem/Ruby/Sass等等相關的東西重裝之後就好了。但就在你想反安裝的過程中,你可能又會遇到以下的錯誤訊息而反安裝失敗:
ERROR: While executing gem … (Errno::EACCES) Permission denied @rb_sysopen-/usr/local/lib/ruby/gems/2.4.0/gems/sass-3.5.1/.yardopts |
那麼這邊在不管使用什麼工具的情況下,提供共同的解決方法,其實與上述的方法雷同,就是把相關的東西全部重灌一遍,保險起見我們要使用兩個小工具。(關於這兩個小工具的具體功能這邊先不加詳述)
1. Xcode Command Line Tools
xcode-select –install |
2. Homebrew(Os套件管理軟體)
安裝需求:Xcode
$ ruby -e “$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/master/install“ |
接者使用Homebrew的替代方式來繞過上面遇到的問題並重新安裝:
brew install ruby |
gem install sass |
gem install compass |
之後再試試看Sass compass watch應該就可以編譯,重新回到作業上囉!
小提醒:之後MacOs如果有在遇到升級的時候,一定要檢查資一下Xcode Command Line Tools是否需要重新安裝喔!
我要留言