在OSX上使用自制软件安装节点。 没有findNpm

我以前在OSX上有一个节点和npm的工作安装,但是当更新npm出了问题。 然后我使用自制软件尝试链接,卸载和重新安装节点。 一路上我的原始节点安装,使用从nodejs.com安装程序,我的brew使用节点冲突。 我终于用自制程序重新安装节点,但是当我尝试运行npm时,我找不到npm命令。 这是运行brew install节点时得到的消息。

$ brew install node ==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/node-0.10.3 Already downloaded: /Library/Caches/Homebrew/node-0.10.32.mavericks.bottle.tar.gz ==> Pouring node-0.10.32.mavericks.bottle.tar.gz ==> Caveats Bash completion has been installed to: /usr/local/etc/bash_completion.d ==> make install npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /usr/local/lib/node_modules/npm/npm-debug.log npm ERR! not ok code 0 make: *** [install] Error 3 Warning: The post-install step did not complete successfully You can try again using `brew postinstall node` ==> Summary 🍺 /usr/local/Cellar/node/0.10.32: 1678 files, 19M 

我试图运行错误消息中所述的后安装节点,但然后得到这个错误信息。

 $ brew postinstall node ==> make install npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /usr/local/lib/node_modules/npm/npm-debug.log npm ERR! not ok code 0 make: *** [install] Error 3 

任何想法如何解决我的节点安装?

这是npm-debug.log的最后一部分

 30 silly resolved readmeFilename: 'README.md', 30 silly resolved _id: 'npm@1.4.24', 30 silly resolved _shasum: 'c0b916c7b6363d1fbde42c2d1420aca8e05a4118', 30 silly resolved _from: '.' } ] 31 info install npm@1.4.24 into /usr/local/lib 32 info installOne npm@1.4.24 33 verbose lib/node_modules/npm unbuild 34 info preuninstall npm@1.4.24 35 info uninstall npm@1.4.24 36 verbose true,/usr/local/lib/node_modules,/usr/local/lib/node_modules unbuild npm@1.4.24 37 verbose /usr/local/bin,[object Object] binRoot 38 verbose lib/node_modules/npm unbuild 39 info preuninstall npm@1.4.24 40 info uninstall npm@1.4.24 41 verbose true,/usr/local/lib/node_modules,/usr/local/lib/node_modules unbuild npm@1.4.24 42 verbose /usr/local/bin,[object Object] binRoot 43 error error rolling back Error: EACCES, unlink '/usr/local/share/man/man5/npm-folders.5' 43 error error rolling back npm@1.4.24 { [Error: EACCES, unlink '/usr/local/share/man/man5/npm-folders.5'] 43 error error rolling back errno: 3, 43 error error rolling back code: 'EACCES', 43 error error rolling back path: '/usr/local/share/man/man5/npm-folders.5' } 44 error Error: EACCES, unlink '/usr/local/share/man/man5/npm-folders.5' 44 error { [Error: EACCES, unlink '/usr/local/share/man/man5/npm-folders.5'] 44 error errno: 3, 44 error code: 'EACCES', 44 error path: '/usr/local/share/man/man5/npm-folders.5' } 45 error Please try running this command again as root/Administrator. 46 error System Darwin 13.4.0 47 error command "node" "/usr/local/lib/node_modules/npm/cli.js" "install" "-g" "-f" 48 error cwd /usr/local/lib/node_modules/npm 49 error node -v v0.10.32 50 error npm -v 1.4.24 51 error path /usr/local/share/man/man5/npm-folders.5 52 error code EACCES 53 error errno 3 54 error stack Error: EACCES, unlink '/usr/local/share/man/man5/npm-folders.5' 55 verbose exit [ 3, true ] 

帮你一个忙,用nvm 。 它可以帮助你pipe理Node版本,你不需要root权限来使用它。

安装nvm

在这里,我们使用curl来获取nvm的安装脚本并使用bash解释该脚本。

 curl https://raw.githubusercontent.com/creationix/nvm/v0.17.2/install.sh | bash 

安装node + npm

该命令将找出最新的node稳定版本并将其安装到您的系统中。

 nvm install stable 

( 目前被窃听 ,现在使用nvm install 0.10 …)

坚持

所以,当你打开一个新窗口时, nvmconfiguration你的terminal,运行这个命令:

 nvm alias default stable 

( 目前被窃听 ,现在使用nvm alias default 0.10

使用

现在你可以照常使用Node了!

 node foo 

阅读nvm文档!

这里: https : //github.com/creationix/nvm

Homebrew的权限问题的解决scheme通常是sudo chown -R $(whoami) $(brew --prefix) 。 如果您曾经以根用户身份使用npm,则不应该使用npm,其目录树中的某些文件将由root拥有,这将导致升级时出现权限问题。

我在OSX上,通过从http://nodejs.org/下载并安装最新版本来解决这个问题。 这会得到你最新的节点和NPM。

我知道这不会被接受的答案,但你可能已经做了一些像sudo npm -g install XXX以前,现在有一些权限的麻烦。

有两个地方,这个麻烦会让你:

 sudo chown -R `whoami`:staff /Users/`whoami` /usr/local 

要点是Node将一些东西保存在/ usr / local中,NPM在HOME目录中保留一些东西。 如果你用sudo触及任何一个,那么你就会有不好的时间。

如果npm -v在安装节点后出现错误,则表示不会创build符号链接。每当通过brew进行安装时,都会创build符号链接。 如果安装某些软件包会导致警告,则必须使用在各自工作区文件夹中的警告中显示导出命令