【问题标题】:Issue installing postgres with npm使用 npm 安装 postgres 时出现问题
【发布时间】: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


【解决方案1】:

尝试C:\PROGRA~1\Python 作为您的环境条目,大概是PYTHON 环境变量。如果您安装的Program Filesshortname 与您的安装不同,请检查:

  1. 开始->运行或按住windows键并按R
  2. cmd.exe 输入
  3. cd "Program Files" 进入
  4. dir

如果我没记错的话,短名称应该列在目录的长名称旁边。

请将此错误报告给维护您正在使用的软件的任何人,他们需要修复其代码以正确处理路径中的空格。

【讨论】:

  • 为什么 npm 需要 Python ?
  • @entropy 不知道...问问他们。
猜你喜欢
  • 2013-01-07
  • 2018-12-05
  • 1970-01-01
  • 2013-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多