Windows altında d3.js oluşturmaya çalışıyorum. Makefile'yi çalıştırmak için cygwin'i kurdum. Ancak, marka bir parçası yüklemek olarak, bu npm install 'çağrıları ve bu çağrı başarısız:Windows'ta d3.js oluşturma (Cygwin) - 'npm install' yolu sorunu için iyi bir çözümdür?
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module 'C:\cygdrive\c\Program Files (x86)\nodejs\node_modules\npm\bin\npm-cli.js'
at Function._resolveFilename (module.js:332:11)
at Function._load (module.js:279:25)
at Array.0 (module.js:479:10)
at EventEmitter._tickCallback (node.js:192:40)
Makefile:230: recipe for target `install' failed
make: *** [install] Error 1
sorunlar cygwin yolu öneki ('cygdrive \ c') dosya yolu eklendiğini gibi görünüyor (bunun dışında yol doğrudur).
Bu sorun için iyi bir çözüm olup olmadığını merak ediyorum? NODE_PATH değişkenini ihraç etmeyi ve Makefile'de değiştirmeyi denedim. Ancak bu, bu hatayı etkilemez (ve Makefile'yi olduğu gibi tutmayı tercih ederim).
DÜZENLEME: Webstorm komut satırından 'npm install' adını verdiğimde (cygwin olmadan) çalıştı. Contextify (jsdom gereksinimi) manüel ('npm install contextify -f') kurulumunu yapmalı ve daha sonra .node dosyasını https://github.com/Benvie/contextify/downloads'dan bağlamsal hale getirmek için build/Release içine kopyaladım ve 'npm install jsdom' ve 'npm install yon'ları' çalıştırdıktan sonra . PKH cevabı benim için işe yaramadı bu yüzden
#!/bin/sh
cygwin=false;
case "`uname`" in
CYGWIN*) cygwin=true;
esac
basedir=`dirname "$0"`
if $cygwin; then
basedir=`cygpath -w "$basedir"`
fi
if [ -x "`dirname "$0"`/node.exe" ]; then
"$basedir/node.exe" "$basedir/node_modules/npm/bin/npm-cli.js" "[email protected]"
else
node "$basedir/node_modules/npm/bin/npm-cli.js" "[email protected]"
fi
Soru yanıtlandığı için bu, npm'de giderilmiştir: https://github.com/isaacs/npm/issues/2465 – pkh