这真的很愚蠢,但我已在 Google 上搜索了一个小时却找不到答案。
我在 Ubuntu 10.10 上,我正在尝试更新到最新版本的 SASS,以便我可以在规则@import
中使用规则@media
。
正如这里所建议的;https://github.com/nex3/sass/issues/64, 我试过:
$ sudo gem install sass --pre
这似乎很有效:
Successfully installed sass-3.2.0.alpha.35
1 gem installed
但是当我尝试时,$ sass -v
我得到:Haml/Sass 3.0.9 (Classy Cassidy)
这是我更新之前的旧版本。
我究竟做错了什么?
$ which gem
/usr/bin/gem
$ which sass
/usr/bin/sass
尝试了答案:
$ sass -v
Haml/Sass 3.0.9 (Classy Cassidy)
$ sudo gem uninstall -Iax sass
Removing sass
Removing sass-convert
Removing scss
Successfully uninstalled sass-3.2.0.alpha.35
$ sass -v
Haml/Sass 3.0.9 (Classy Cassidy) (Was expecting an error here)
$ sudo gem install sass --pre
Successfully installed sass-3.2.0.alpha.35
1 gem installed
Installing ri documentation for sass-3.2.0.alpha.35...
Installing RDoc documentation for sass-3.2.0.alpha.35...
$ sass -v
Haml/Sass 3.0.9 (Classy Cassidy)
因此,它会删除我成功安装的那个,并保留我在运行命令时实际使用的那个sass
。有什么想法吗?
答案1
我们最终做了以下事情:
首先,我们安装虚拟机使用 Rails 现成的一行程序:
wget --no-check-certificate https://raw.github.com/joshfng/railsready/master/railsready.sh && bash railsready.sh
当被询问时,选择选项 2 (RVM)。
然后我们做到了source ~/.bashrc
然后我们做了一个gem install sass --pre
(没有sudo)。
答案2
删除它然后重新安装:
sudo gem uninstall -Iax sass
sudo gem install sass --pre
新编辑:我刚刚看到你可能一直在使用haml-edge
gem(它打包了自己的副本sass
)。删除它并安装 sass-proper。
sudo gem uninstall -Iax haml-edge
sudo gem install sass --pre
繁荣。
老的编辑如果你还有剩余的东西,听起来像是手动安装的,另一个 gem 设置了一些东西,或者你从包中安装了它。我很想告诉你从 orbit 中删除它,然后再修复它。
运行nano $(which sass)
并查看你正在处理什么。在我安装 gem 的版本中,我看到如下标题:
#!/usr/bin/ruby1.8
#
# This file was generated by RubyGems.
#
# The application 'sass' is installed as part of a gem, and
# this file is here to facilitate running it.
如果你看到类似的东西,那就表明有些事情很可疑,我建议你直接运行:
sudo rm "$(which sass)" "$(which sass-convert)" "$(which scss)"
如果其中有一个不同的标题,它可能会给你一个线索,告诉你它来自哪里。如果它是你安装的包,请删除它。如果你不能(例如它是一个依赖项),你可以删除该文件并相应地替换(知道它可能会破坏依赖项)。
但归根结底,它只是一颗 Ruby 宝石。杀死它并不会取消圣诞节。
答案3
我已经在 即 上测试过Linux Mint 14 (Nadia)
了Ubuntu 12.10 (Quantal)
。
1. 检查你的环境
首先检查你当前的版本sass
sass --version # Sass 3.1.19 (Brainy Betty)
which sass # /usr/bin/sass
2. 删除发行版软件包
删除使用包管理器(即apt-get
或apitude
)安装的包,因为它们优先
apt-get remove ruby-sass ruby-compass
笔记:$PATH
如果您配置目标正确的二进制文件,则可以跳过此步骤(见下文)。
3. 安装新版本
apt-get install ruby-full
gem install sass
gem install compass
4. 测试版本
sass --version # Sass 3.2.7 (Media Mark)
which sass # /usr/local/bin/sass