Я даже не уверен, где начать отлаживать это. Несколько месяцев назад я с радостью мог скомпилировать свой CSS из моих файлов LESS. Сегодня я бегу либо, recess --compile test.less
либо lessc test.less
получаю пустой вывод. Нет ошибок lessc test.less > test.css
просто создает пустой файл. Makefile твиттера-bootstrap для ошибок LESS, все это не полезно.
Я использую следующие простые test.less
для отладки:
@color: #4D926F;
#header {
color: @color;
}
h2 {
color: @color;
}
Я на Ubuntu 12.10, я имел обыкновение sudo apt-get install node-less
предоставлять lessc
, и установил углубление из направлений на GitHub (Npm). Оба просто дают мне пустой вывод.
Даже lessc --version
ничего не возвращает.
which lessc
шоу
/usr/local/bin/lessc
и файл не пуст.
node
Возможно, что-то случилось с моей установкой, но не знаю, как это отладить. apt-get remove --purge node-less
и переустановка не помогла.
Большое спасибо за помощь или любые советы по отладке!
источник
/usr/local/bin/lessc
это не правильное местоположение, когда оно находится в официальном репозитории: packages.ubuntu.com/quantal/all/node-less/filelist ... Я полагаю, вы установили его по системному пути, используяsudo npm ...
это очень плохая идея.Ответы:
В Ubuntu и других дистрибутивах вы должны предпочесть дистрибутивы, а не устанавливать пакеты вручную. Итак, прежде всего вы должны удалить углубление, установленное через npm :
Также удалите пакет без узла , установленный через
apt-get
, чтобы мы могли начать с чистой среды:После выполнения этих двух команд убедитесь, что следующие файлы не существуют, и, если они существуют, удалите их:
Также проверьте следующие каталоги (и удалите их, если они существуют):
Все эти файлы и каталоги могут быть сгенерированы различными способами. Различные способы установки приводят к использованию разных каталогов. Удаление всех этих файлов важно для того, чтобы ничего не конфликтовало: у вас всегда должна быть установлена одна и только одна версия программного обеспечения в вашей системе. Единственное исключение - когда сам дистрибутив предоставляет разные версии одного и того же программного обеспечения (в этом случае пакеты создаются так, чтобы они не конфликтовали друг с другом).
Теперь у вас чистая среда и вы можете установить без узла :
Обратите внимание, что безузловый пакет не доставляется
/usr/bin/recess
, просто/usr/bin/lessc
, так что все нормально, если происходитrecess --compile
сбой (или, лучше, он должен завершиться с ошибкой)Если
lessc
все еще не работает, пожалуйста, проверьте выводwhich lessc
. Помните: если он возвращает что-то другое/usr/bin/lessc
, то это означает, что вы используете не пакет lessc из дистрибутива, а что-то другое.источник
lessc
дает/usr/local/bin/lessc no such file or directory
, но бегwhich lessc
дает/usr/bin/lessc
. Как мне сказать, чтобы использовать Lessc изwhich lessc
?После выполнения шагов из ответа Андреа вам, возможно, придется бежать,
source ~/.bashrc
если вы получаете,bash: /usr/local/bin/lessc: No such file or directory
когда запускаете lessc и когдаwhich lessc
показывает/usr/bin/lessc
. Это обновляет переменную среды $ PATH.источник