Compass 是一套 CSS Authoring Framework,也是基於 Sass 語法的一套 Framework,先前寫了 Gulp 的 Compass Plugin,在針對自動化測試時候出現版本相依性不同,造成無法自動測試成功。自動化測試目前跟 Github 最常搭配的就是 Travis CI 或者是 Codeship,當然如果非 Open source 專案可能就要自己架設 CI 伺服器,個人推薦就是 Jenkins。這次遇到的問題其實跟 Ruby Gem 版本相依性有關,由於要測試 Compass 所有 Command 語法,所以使用了 Susy + sass + compass,如果在 .travis.yml
內直接寫
Ruby 安裝 debugger package 發生 No source for ruby 錯誤
當您在特定 Ruby 版本下安裝 debugger gem 套件,會碰到底下錯誤訊息
Using debugger-ruby_core_source (1.2.4) Installing debugger-linecache (1.2.4) with native extensions Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.checking for vm_core.h… no checking for vm_core.h… no Makefile creation failed
No source for ruby-2.0.0-p451 provided with debugger-ruby_core_source gem. **************************************************************************
會發生此錯誤的最大原因是在 debugger-ruby_core_source
原始碼內,只有包含特定少數的 Headers,解決此錯誤也非常簡單,可以直接將目前的 ruby 版本 headers 安裝到 debugger-ruby_core_source
目錄內即可,透國 rake 就可以完成
$ cd /usr/local/rvm/gems/ruby-2.0.0-p451/gems/debugger-ruby_core_source-1.2.4/lib/debugger/ruby_core_source $ rake add_source VERSION=2.0.0-p451 --trace
執行完成後,就可以回到原專案目錄透過 bundle install
繼續安裝套件。
在 CentOS 上面安裝 Ruby 環境
Compass 這套 CSS Framework 來 develop,開發之前必須把環境先弄好,就是要有 Ruby 套件才可以安裝 Compass,網路上的教學幾乎都在是 Ubuntu 底下用 apt-get 方式來安裝,其實相當方便,但是 Fedora 或 CentOS 就是要用 yum 方式來安裝,這次碰到 CentOS 竟然 yum search git 出來的結果是空的,所以決定全部都透過 tar 的方式來安裝全部套件了。由於 Fedora 幾乎都可以找到套件,但是碰到 rubygems 需要用到 ruby 1.8.7 以上版本,所以還是乖乖的用 tar 方式吧。 大家可以試試看透過底下 yum 方式安裝:
yum install -y ruby ruby-devel rubygems雖然 Fedora 透過上面可以安裝成功,可是 ruby 跟 rubygems 的版本根本是...太舊了吧 ... [Read More]