【发布时间】:2012-09-02 05:35:21
【问题描述】:
我在 Windows 机器上通过 npm 安装 pg 时遇到问题。
它抱怨 python,但我已将 python 添加为 env。多变无济于事。
这些都是我尝试声明环境的所有方式。变量。
C:/Program Files/Python"C:/Program Files/Python"C:/Program Files/Python/python.exe"C:/Program Files/Python/python.exe"
这是错误:
D:\Projects\GitHub\inmotion>npm -g install pg
npm http GET https://registry.npmjs.org/pg
npm http 200 https://registry.npmjs.org/pg
npm http GET https://registry.npmjs.org/generic-pool/1.0.12
npm http 200 https://registry.npmjs.org/generic-pool/1.0.12
npm http GET https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.12.tgz
npm http 200 https://registry.npmjs.org/generic-pool/-/generic-pool-1.0.12.tgz
> pg@0.8.3 install C:\Users\Guzza\AppData\Roaming\npm\node_modules\pg
> node-gyp rebuild || (exit 0)
C:\Users\Guzza\AppData\Roaming\npm\node_modules\pg>node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable ""C:/Program Files/Python"", you can set the PYTHON env variable.
gyp ERR! stack at failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:95:14)
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:59:11
gyp ERR! stack at Object.oncomplete (fs.js:297:15)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\Guzza\AppData\Roaming\npm\node_modules\pg
gyp ERR! node -v v0.8.4
gyp ERR! node-gyp -v v0.6.1
gyp ERR! not ok
pg@0.8.3 C:\Users\Guzza\AppData\Roaming\npm\node_modules\pg
└── generic-pool@1.0.12
【问题讨论】:
-
我猜它不喜欢空格。将 Python 安装到
C:\Python并重试。 -
您是否尝试将路径设置为使用 \ 而不是 /?毕竟这是 Windows。
-
@Joe Windows 几乎总是接受
/代替 \ 并且从 win98 或更早版本开始。可悲的是,几乎会咬你;特别是,任何将/视为命令行标志的东西(例如/?、/h等,就像unix 使用-)都会窒息。在命令行处理中没有问题的应用程序可以正常工作;如果您使用'/'或\ AFAIK,内核并不关心。 -
如果这是一个答案,我会接受 kichik 评论,因为它成功了
标签: windows node.js postgresql npm node-gyp