LESS Compiladores CSS retornando em branco

8

Não sei ao certo onde começar a depurar isso. Meses atrás, eu poderia felizmente compilar meu CSS dos meus arquivos LESS. Hoje, eu corro recess --compile test.less ou lessc test.less e acabo de receber uma saída em branco. Sem erros. lessc test.less > test.css apenas cria um arquivo em branco. O Makefile do twitter-bootstrap para erros LESS, tudo isso não é útil.

Estou usando o seguinte test.less para depurar:

@color: #4D926F;
#header {
  color: @color;
}
h2 {
   color: @color;
}

Estou no ubuntu 12.10, usei sudo apt-get install node-less para fornecer lessc e instalei o recesso a partir das instruções no github (npm) Ambos apenas me dão saída vazia.

Mesmo lessc --version não retorna nada.

 which lessc

mostra

/usr/local/bin/lessc

e o arquivo não está vazio.

Algo deve ter acontecido com a instalação do node , talvez, mas não tenho idéia de como depurar isso. apt-get remove --purge node-less e reinstalar não ajudaram.

Muito obrigado pela ajuda ou pelas dicas de depuração!

    
por cboettig 20.12.2012 / 19:07

2 respostas

7

No Ubuntu e em outras distribuições, você deve preferir os pacotes de distribuição em vez de instalar pacotes manualmente. Primeiramente, você deve remover o recesso instalado por meio de npm :

sudo npm uninstall recess -g

Remova também o pacote node-less instalado via apt-get , para que possamos começar com um ambiente limpo:

sudo apt-get remove node-less

Depois de emitir esses dois comandos, verifique se os arquivos a seguir não existem e, se existirem, exclua-os:

/usr/bin/lessc
/usr/local/bin/lessc

Verifique também os seguintes diretórios (e remova-os se existirem):

/node_modules/less
/usr/bin/node_modules/less
/usr/node_modules/less
/usr/local/bin/node_modules/less
/usr/local/node_modules/less
~/.node_modules/less
~/.node_libraries/less

Todos esses arquivos e diretórios podem ser gerados de várias maneiras. Diferentes métodos de instalação levam a diferentes diretórios usados. Remover todos esses arquivos é importante para garantir que nada entre em conflito: você deve sempre ter uma, e apenas uma, versão de um software instalado em seu sistema. A única exceção é quando a própria distribuição fornece versões diferentes do mesmo software (neste caso, o pacote é feito para que eles não entrem em conflito uns com os outros).

Agora você tem um ambiente limpo e pode instalar o node-less :

sudo apt-get install node-less

Observe que o pacote node-less não envia /usr/bin/recess , apenas /usr/bin/lessc , por isso é perfeitamente aceitável se recess --compile falhar (ou, melhor, deve fail).

Se lessc ainda não funcionar, verifique a saída de which lessc . Lembre-se: se ele retornar algo diferente de /usr/bin/lessc , significa que você não está usando o lessc do pacote de distribuição, mas algo diferente.

    
por Andrea Corbellini 27.12.2012 / 20:51
3

Depois de seguir as etapas da resposta de Andrea, talvez seja necessário executar source ~/.bashrc se você obtiver bash: /usr/local/bin/lessc: No such file or directory ao executar o lessc e quando which lessc mostrar /usr/bin/lessc . Isso é para atualizar sua variável de ambiente $ PATH.

    
por Brayden Williams 24.05.2014 / 20:32