node.js 5.3.0経由でWindows 7にPureScriptとpulpをインストールしようとしています:
npm install -g purescript
npm install -g pulp
cd some-empty-dir
pulp init
インストールは正しく動作しているように見えましたが、pulp
常に次のエラーで失敗します。
module.js:328
throw err;
^
Error: Cannot find module './pulp'
at Function.Module._resolveFilename (module.js:326:15)
at Function.Module._load (module.js:277:25)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (C:\Users\me\AppData\Roaming\npm\node_modules\pulp\index.js:2:1)
at Module._compile (module.js:398:26)
at Object.Module._extensions..js (module.js:405:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Function.Module.runMain (module.js:430:10)
index.js には、次の 2 行だけが含まれています。
#!/usr/bin/env node
require("./pulp");
C:\Users\me\AppData\Roaming\npm
私のPATHの最後の部分です。
where pulp
戻り値
C:\Users\me\AppData\Roaming\npm\pulp
C:\Users\me\AppData\Roaming\npm\pulp.cmd
Git Bash でも同じことを試しましたが、結果は同じでした。purescript とpulp と node/npm を再インストールしてみましたが、何も変わりませんでした。
別のコンピューターでは問題はありませんでした。この特定のシステムへのインストールを何かが妨げているようです。環境変数、既存または存在しないディレクトリ、...?
私は node.js に精通しておらず、どこを見ればよいかわかりません。何が問題なのですか?
編集:パス内のファイルの内容
C:\Users\me\AppData\Roaming\npm\pulp:
#!/bin/sh
basedir=`dirname "$0"`
case `uname` in
*CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac
if [ -x "$basedir/node" ]; then
"$basedir/node" "$basedir/node_modules/pulp/index.js" "$@"
ret=$?
else
node "$basedir/node_modules/pulp/index.js" "$@"
ret=$?
fi
exit $ret
C:\Users\me\AppData\Roaming\npm\pulp.cmd:
@IF EXIST "%~dp0\node.exe" (
"%~dp0\node.exe" "%~dp0\node_modules\pulp\index.js" %*
) ELSE (
@SETLOCAL
@SET PATHEXT=%PATHEXT:;.JS;=;%
node "%~dp0\node_modules\pulp\index.js" %*
)
コマンドpulp
を実行するだけで、 の「else」ブランチが実行されpulp.cmd
ます。