Ni siquiera estoy seguro de dónde comenzar a depurar esto. Meses atrás, felizmente podía compilar mi CSS de mis MENOS archivos. Hoy, ejecuto uno recess --compile test.less
o dos lessc test.less
y solo obtengo un resultado en blanco. Sin errores. lessc test.less > test.css
solo crea un archivo en blanco. El Makefile de twitter-bootstrap para MENOS errores, todo no es útil.
Estoy usando el siguiente simple test.less
para depurar:
@color: #4D926F;
#header {
color: @color;
}
h2 {
color: @color;
}
Estoy en ubuntu 12.10, solía sudo apt-get install node-less
proporcionar lessc
e instalé el receso de las instrucciones en github (npm). Ambos solo me dan salida vacía.
Incluso lessc --version
no devuelve nada.
which lessc
muestra
/usr/local/bin/lessc
y el archivo no está vacío
node
Quizás algo le haya pasado a mi instalación, pero no tengo idea de cómo depurar esto. apt-get remove --purge node-less
y reinstalar no ayudó.
¡Muchas gracias por la ayuda o algún consejo sobre depuración!
fuente
/usr/local/bin/lessc
no es la ubicación correcta cuando es del repositorio oficial: packages.ubuntu.com/quantal/all/node-less/filelist ... Supongo que lo instaló en la ruta del sistema utilizando, losudo npm ...
cual es una muy mala idea.Respuestas:
En Ubuntu y otras distribuciones, debe preferir los paquetes de distribución en lugar de instalarlos manualmente. Entonces, en primer lugar, debe eliminar el receso instalado a través de npm :
También elimine el paquete sin nodo instalado a través de
apt-get
, para que podamos comenzar con un entorno limpio:Después de emitir estos dos comandos, asegúrese de que los siguientes archivos no existan y, si existen, elimínelos:
Compruebe también los siguientes directorios (y elimínelos si existen):
Todos esos archivos y directorios pueden generarse de varias maneras. Los diferentes métodos de instalación conducen a diferentes directorios utilizados. Eliminar todos esos archivos es importante para garantizar que nada entre en conflicto: siempre debe tener una, y solo una, versión de un software instalado en su sistema. La única excepción es cuando la distribución en sí misma proporciona diferentes versiones del mismo software (en este caso, el paquete se hace para que no entren en conflicto entre sí).
Ahora tiene un entorno limpio y puede instalar sin nodo :
Tenga en cuenta que el paquete sin nodo no se envía
/usr/bin/recess
, simplemente/usr/bin/lessc
, por lo que está perfectamente bien sirecess --compile
falla (o, mejor aún, debe fallar).Si
lessc
todavía no funciona, verifique la salida dewhich lessc
. Recuerde: si devuelve algo diferente/usr/bin/lessc
, significa que no está utilizando lessc del paquete de distribución, sino algo más.fuente
lessc
da/usr/local/bin/lessc no such file or directory
, pero correrwhich lessc
da/usr/bin/lessc
. ¿Cómo le digo que use el lesscwhich lessc
?Después de seguir los pasos de la respuesta de Andrea, es posible que tengas que correr
source ~/.bashrc
si lo hacesbash: /usr/local/bin/lessc: No such file or directory
cuando corres menos y cuando sewhich lessc
muestra/usr/bin/lessc
. Esto es para actualizar su variable de entorno $ PATH.fuente