【问题标题】:Trouble Installing npm on Mac在 Mac 上安装 npm 时遇到问题
【发布时间】:2013-03-10 03:56:59
【问题描述】:

我似乎无法让 npm 使用最新版本的节点 (0.8.11) 在 os x mountain lion 上工作。无论是从源代码构建,还是使用安装程序,我在尝试运行 npm 时都找不到命令。我检查了 /usr/local/bin 并且 npm 存在,这是一个 ln -l

lrwxr-xr-x  1 root  wheel  38 Oct  2 16:33 npm -> ../lib/node_modules/npm/bin/npm-cli.js

按照 /usr/local/lib/node_modules/npm/bin 显示

drwxr-xr-x  4 24561  staff   136 Oct  2 16:33 node-gyp-bin
-rwxr-xr-x  1 root   staff   274 Sep 27 12:39 npm
-rwxr-xr-x  1 root   staff  2247 Sep 27 12:39 npm-cli.js
-rw-r--r--  1 root   staff   209 Sep 27 12:39 npm.cmd
-rwxr-xr-x  1 root   staff   504 Sep 27 12:39 read-package-json.js

从源代码运行“make install”时,出现以下错误

symlinking ../lib/node_modules/npm/bin/npm-cli.js -> /usr/local/bin/npm
updating shebang of /usr/local/bin/npm to /usr/local/bin/node
Traceback (most recent call last):
File "tools/install.py", line 225, in <module>
run(sys.argv[:])
File "tools/install.py", line 220, in run
if cmd == 'install': return files(install)
File "tools/install.py", line 203, in files
if 'true' == variables.get('node_install_npm'): npm_files(action)
File "tools/install.py", line 166, in npm_files
update_shebang(link_path, shebang)
File "tools/install.py", line 133, in update_shebang
s = open(path, 'r').read()
IOError: [Errno 2] No such file or directory: '/usr/local/bin/npm'
make: *** [install] Error 1

我的路径如下:

bash:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin: No such file or directory

安装程序运行顺利,没有错误,但我仍然不会执行 npm。感谢您的帮助!

【问题讨论】:

  • 我不在 Mountain Lion 上,但 MacPorts 适合我。你试过了吗?
  • 是的,我实际上最终使用了 MacPorts,而且效果很好
  • 请注意,'/usr/local/bin/npm' 是一个 JavaScript 脚本,它尝试使用 'node' 运行(它使用标准的 'shebang' 实践找到它:/usr/bin/env node )。你的 PATH 中是否有“节点”...我假设它在 /usr/local/bin 中,但可能没有?

标签: macos node.js


【解决方案1】:

这已经几个月了,不过,node.js 已更新到 0.8.22,并已更正此问题。

如果您不想为这个程序安装 Macports,首选方法是下载 Mac OSX 安装程序包。

【讨论】: