Je ne sais même pas par où commencer pour déboguer cela. Il y a quelques mois, je pouvais compiler avec bonheur mon CSS à partir de mes fichiers LESS. Aujourd'hui, je lance soit recess --compile test.less
ou lessc test.less
et je n'obtiens qu'un résultat vierge. Aucune erreur. lessc test.less > test.css
crée simplement un fichier vide. Les erreurs Makefile for LESS de Twitter-bootstrap, que ce soit de manière inutile.
J'utilise le simple test.less
suivant pour déboguer:
@color: #4D926F;
#header {
color: @color;
}
h2 {
color: @color;
}
Je suis sur Ubuntu 12.10, j'ai utilisé Sudo apt-get install node-less
pour fournir lessc
, et installé en retrait des instructions sur github (npm). Les deux me donnent juste une sortie vide.
Même lessc --version
ne renvoie rien.
which lessc
montre
/usr/local/bin/lessc
et le fichier n'est pas vide.
Quelque chose a dû arriver à mon installation node
peut-être, mais je ne sais pas comment déboguer cela. apt-get remove --purge node-less
et la réinstallation n'a pas aidé.
Merci beaucoup pour l'aide ou des conseils sur le débogage!
Dans Ubuntu et d'autres distributions, vous devriez préférer les paquets de distribution plutôt que de les installer manuellement. Donc, tout d’abord, vous devez supprimer le retrait installé via npm:
Sudo npm uninstall recess -g
Supprimez également le paquet node-less installé via apt-get
, afin de pouvoir commencer avec un environnement propre:
Sudo apt-get remove node-less
Après avoir émis ces deux commandes, assurez-vous que les fichiers suivants n'existent pas et, le cas échéant, supprimez-les:
/usr/bin/lessc
/usr/local/bin/lessc
Vérifiez également les répertoires suivants (et supprimez-les s'ils existent):
/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
Tous ces fichiers et répertoires peuvent être générés de différentes manières. Différentes méthodes d'installation conduisent à différents répertoires utilisés. La suppression de tous ces fichiers est importante pour garantir que rien ne soit en conflit: vous devez toujours disposer d'une, et d'une seule, du logiciel installé sur votre système. La seule exception est lorsque la distribution elle-même fournit différentes versions du même logiciel (dans ce cas, les packages sont créés de manière à ne pas entrer en conflit).
Maintenant, vous avez un environnement propre et pouvez installer node-less:
Sudo apt-get install node-less
Notez que le paquet node-less ne livre pas /usr/bin/recess
, mais simplement /usr/bin/lessc
, il est donc parfaitement correct si recess --compile
échoue (ou, mieux, doit échouer).
Si lessc
ne fonctionne toujours pas, veuillez vérifier le résultat de which lessc
. Rappelez-vous que s'il retourne quelque chose de différent de /usr/bin/lessc
, cela signifie que vous n'utilisez pas lessc du paquet de distribution, mais quelque chose d'autre.
Après avoir suivi les étapes de la réponse d'Andrea, vous devrez peut-être exécuter source ~/.bashrc
si vous obtenez bash: /usr/local/bin/lessc: No such file or directory
lorsque vous exécutez lessc et que which lessc
affiche /usr/bin/lessc
. Ceci permet de mettre à jour votre variable d’environnement $ PATH.