Это действительно глупо, но я уже час гуглю и не могу найти ответ.
Я нахожусь на 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
. Thougts?
Удалите его, а затем переустановите:
sudo gem uninstall -Iax sass
sudo gem install sass --pre
Новое редактирование: я только что видел, что вы, возможно, использовали гем haml-edge
(который упаковывает свою собственную копию sass
). Разбейте его и установите sass-Proper.
sudo gem uninstall -Iax haml-edge
sudo gem install sass --pre
Бум.
Old Edit , если у вас все еще остались вещи, это звучит так, как будто была ручная установка, другой драгоценный камень что-то установил или вы установили это из пакета. Я бы соблазнился сказать вам, что нужно убрать его с орбиты и починить позже.
Запустите nano $(which sass)
и посмотрите, с чем вы имеете дело. В моей версии с самоцветами я вижу заголовок вроде:
#!/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)"
Если есть другой заголовок, он может дать вам подсказку, откуда он взялся. Если это пакет, который вы установили, удалите его. Если вы не можете (например, это зависимость), вы можете уничтожить файл и заменить соответствующим образом (зная, что это может нарушить зависимость в любом случае).
1114 Но в конце концов, это всего лишь рубиновый камень. Убийство не отменяет Рождество.
Я проверял это на Linux Mint 14 (Nadia)
, то есть Ubuntu 12.10 (Quantal)
.
Сначала проверьте текущую версию sass
sass --version # Sass 3.1.19 (Brainy Betty)
which sass # /usr/bin/sass
удалить пакеты, установленные с помощью менеджера пакетов (т. Е. apt-get
или apitude
), так как они имеют приоритет
apt-get remove ruby-sass ruby-compass
Примечание: это может быть пропущено, если вы настроите $PATH
для назначения правильного двоичного файла (см. ниже).
apt-get install ruby-full
gem install sass
gem install compass
sass --version # Sass 3.2.7 (Media Mark)
which sass # /usr/local/bin/sass
В итоге мы сделали следующее:
Сначала мы установили rvm , используя готовый рельс, один слой:
wget --no-check-certificate https://raw.github.com/joshfng/railsready/master/railsready.sh && bash railsready.sh
Затем мы сделали source ~/.bashrc
Затем мы сделали gem install sass --pre
(без sudo).