【发布时间】:2016-07-13 22:32:39
【问题描述】:
我已经使用 RVM 在 RHEL 5 上安装了 ruby 2.3.1。
我也安装了 SASS。
-bash-3.2$ which ruby
/usr/local/rvm/rubies/ruby-2.3.1/bin/ruby
和
-bash-3.2$ which sass
/usr/local/rvm/gems/ruby-2.3.1/bin/sass
和
-bash-3.2$ gem which sass
/usr/local/rvm/gems/ruby-2.3.1/gems/sass-3.4.22/lib/sass.rb
但是,当我尝试通过 php 脚本使用 SASS 时,出现以下错误:
/usr/local/rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/dependency.rb:319:in `to_specs': Could not find 'sass' (>= 0.a) among 16 total gem(s) (Gem::LoadError)
Checked in 'GEM_PATH=/.gem/ruby/2.3.0:/usr/local/rvm/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0', execute `gem env` for more information
from /usr/local/rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/dependency.rb:328:in `to_spec'
from /usr/local/rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_gem.rb:65:in `gem'
from /usr/bin/sass:22:in `<main>'
from /usr/bin/ruby_executable_hooks:15:in `eval'
from /usr/bin/ruby_executable_hooks:15:in `<main>'
运行 gem 环境 gempath 产生:
/usr/local/rvm/gems/ruby-2.3.1/gems/:/usr/local/rvm/gems/ruby-2.3.1/bin:/usr/local/rvm/gems/ruby-2.3.1
您可以看到错误消息中有关 GEM_PATH 的信息与上面显示的环境 gempath 的值存在冲突。
我怀疑以前版本的 ruby 的一些残余会导致问题,但在这一点上我画的是空白。
调用gem env的全部结果如下:
RubyGems Environment:
- RUBYGEMS VERSION: 2.5.1
- RUBY VERSION: 2.3.1 (2016-04-26 patchlevel 112) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/local/rvm/gems/ruby-2.3.1
- USER INSTALLATION DIRECTORY: /root/.gem/ruby/2.3.0
- RUBY EXECUTABLE: /usr/local/rvm/rubies/ruby-2.3.1/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/rvm/gems/ruby-2.3.1/bin
- SPEC CACHE DIRECTORY: /root/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /usr/local/rvm/rubies/ruby-2.3.1/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/local/rvm/gems/ruby-2.3.1
- /usr/local/rvm/gems/ruby-2.3.1/gems/
- /usr/local/rvm/gems/ruby-2.3.1/bin
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /usr/kerberos/sbin
- /usr/local/rvm/gems/ruby-2.3.1/bin
- /usr/local/rvm/gems/ruby-2.3.1@global/bin
- /usr/local/rvm/rubies/ruby-2.3.1/bin
- /usr/kerberos/bin
- /usr/local/bin
- /bin
- /usr/bin
- /usr/local/rvm/bin
- /opt/dell/srvadmin/bin
- /opt/dell/srvadmin/sbin
任何帮助甚至尝试的事情都将不胜感激。
谢谢!
【问题讨论】:
-
您能否详细说明“通过 php 脚本使用 SASS”。贴出导致错误的代码行或命令。
-
$cmd = "echo \"" . $src . "\" | sass --scss --no-cache -s";
-
其中 $src 是要转换的 SCSS 字符串。
标签: ruby