Ich möchte das node-sass
Modul in meiner node.js v0.12
Anwendung verwenden, um von der Leistung von zu profitieren libsass
.
Ich habe ausgeführt npm i node-sass
, um das Modul zu installieren, bisher keine Fehler.
Jetzt beginnt das Chaos:
Wenn ich das nur REPL
in einem Terminal öffne, um es auszuprobieren, node-sass
funktioniert alles einwandfrei. Wenn ich es jedoch in meine Projektdateien aufnehme und ausführe node myfile.js
, wird die folgende Fehlermeldung angezeigt:
Error: `libsass` bindings not found. Try reinstalling `node-sass`?
Die Beschreibung des Moduls auf npmjs.com besagt, dass möglicherweise ein Problem bei der Lösung #!/usr/bin/env node
unter Ubuntu vorliegt und wie dies behoben werden kann. Dies ist jedoch auf meinem Computer nicht der Fall.
Ich konnte nichts Nützliches finden und hoffe, dass Sie mir helfen können.
Ich verwende den Knoten v0.12.2 unter Ubuntu 14.10.
PS: Ich habe bereits versucht, Node-Sass neu zu installieren, aber ohne Erfolg. Nichts verändert sich.
npm rebuild node-sass
, wodurch der Fehler für mich / meine Umgebung beseitigt wurde .Antworten:
Sie haben wahrscheinlich versucht, Node-Sass während der Verwendung neu zu installieren
oder
Node-Sass ist jedoch eine C-Version von Sass. Sie müssen npm Rebuild verwenden :
quelle
node-sass
geht es ausschließlich um die Bindungnode
anlib-sass
ein C-Programm. Links: Node Addons , ein gefeierter Kommentar , libsassWenn Sie Node 4.x oder höher verwenden, müssen Sie gulp-sass neu installieren mit:
npm uninstall --save-dev gulp-sass npm install --save-dev gulp-sass@2
quelle
Ich habe dieses Problem behoben, indem ich den vorhandenen
/node_modules
Ordner gelöscht und ausgeführt habenpm update
quelle
node_modules
und erneute Ausführennpm install
funktioniert auch für mich.package.json
wurde entwickelt, um Ihre Abhängigkeiten zu beschreiben, und Sie sollten etwas anderes verwenden, um Ihre Abhängigkeiten auf Ihren Boxen zu installieren. (mit einem Skript, das npm install aufruft, oder einem Docker-Container oder oder oder)Dies ist die einzige Lösung, die für mich funktioniert hat.
sudo npm install -g n sudo n 0.12.7 npm install node-sass@2 sudo npm -g install node-gyp@3 npm rebuild node-sass
quelle
Diese Problemumgehung ( http://forum.ionicframework.com/t/error-running-gulp-sass/32311/20 ) hat bei mir funktioniert.
Beginnend mit diesem Setup:
Cordova CLI: 5.3.3 Gulp-Version: CLI-Version 3.9.0 Gulp lokal: Lokale Version 3.9.0 Ionic-Version: 1.1.0 Ionic-CLI-Version: 1.6.5 Ionic App Lib-Version: 0.3.9 ios-deploy-Version: Nicht installiert ios-sim-Version: 5.0.1 Betriebssystem: Mac OS X Yosemite-Knotenversion: v4.1.1 Xcode-Version: Xcode 6.4 Build-Version 6E35b
Ich habe eine Lösung gefunden, um die Verwendung des Befehls 'sudo' zu vermeiden. Wir müssen vorher die npm-Berechtigungen wie folgt korrigieren: https://docs.npmjs.com/getting-started/fixing-npm-permissions und die Fixierungsberechtigungen für Node hier: http://mawaha.com/permission-fix-node- js / Danach können wir Software ohne 'sudo' für npm, n oder ionic überprüfen und neu installieren.
Ich folgte diesem Schritt:
npm install -g n rm -R node_modules/ npm install node-sass@3.3.3 npm -g install node-gyp@3 npm uninstall gulp-sass npm install gulp-sass@2 npm rebuild node-sass ionic setup sass
Warum [email protected]? Weil es mit der neuesten ionischen Version funktioniert: https://github.com/driftyco/ionic/pull/4449
quelle
Das Kombinieren der beiden obigen Antworten hat für mich funktioniert, plus Ergänzungen:
sudo npm uninstall --save gulp-sass npm install --save gulp-sass@2 npm update npm rebuild node-sass
quelle
Ich habe dieses Problem gelöst, um das richtige Verzeichnis mit der angegebenen Datei binding.node zu erstellen. Sie können die Bindungen von github herunterladen
https://github.com/sass/node-sass-binaries
Suchen Sie in der Fehlermeldung nach dem Pfad, in dem versucht wird, die Bindung zu finden. In meinem Fall:
C: \ Benutzer \ Martijn \ Dokumente \ Knotenmodule \ gulp-sass \ Knotenmodule \ Knoten-sass \ Anbieter \ win32-x64-46
Also erstelle ich diese Map win32-x64-46 und kopiere die Bindung von github in.
quelle
Meine Lösung war ein Downgrade auf
v0.10.25
(versuchensudo n 0.10.25
Sie es, wenn Sie verwendenn
)quelle
Für mich wurde dieses Problem in meinem Build-System (Travis CI) dadurch verursacht, dass ich in meiner
.travis.yml
Datei etwas Dummes getan habe . Tatsächlich rief ichnpm install
vornvm use 0.12
, und dies verursacht wurdenode-sass
für gebaut werden0.10
statt0.12
. Meine Lösung bestand darin, einfachnvm use
aus dem Abschnitt der.travis.yml
Dateibefore_script
vor demnpm install
Befehl zu wechseln, der sich imbefore_install
Abschnitt befand.quelle
Dies war ein Problem mit der Knotenversion für mich. Versuchen Sie, Ihre Version mit nvm auf etwa 0.10.32 zurückzuverfolgen. Das hat bei mir funktioniert. Ich habe 4.2.2 ausgeführt
quelle
Ich habe dieses Problem gelöst, indem ich mein gcc von 4.4.x auf 4.7.x aktualisiert habe
quelle
Keine Notwendigkeit für Sudo oder Neuinstallationen. Das hat bei mir immer funktioniert:
nvm use 0.12.2
quelle