nodejs - 无法通过npm安装contextify

时间:2015-02-08 21:54:14

标签: node.js npm

获取有关" node-gyp rebuild"的错误但似乎无法找出原因?

完整错误:http://pastebin.com/HJ4z6tie

3 个答案:

答案 0 :(得分:1)

也许,这些链接和解决方案对您有用:

1)https://github.com/hideo55/node-murmurhash3/issues/4

问题:

  

当我运行命令sudo npm link时,你的NPM失败了。

解决方案:

  

当我使用--unsafe-perm=true这个NPM有效时。

2)https://github.com/npm/npm/wiki/Troubleshooting#permission-error

  

权限错误

     

npm ERR!代码EPERM

     

npm ERR!代码EACCES

Fix the permissions of your cache with sudo chown -R $(whoami) "$HOME/.npm".
Try again with sudo. e.g. sudo npm install express -g. (You'll probably need to fix cache permissions afterwards, as above).
Reinstall node so it doesn't require sudo.

答案 1 :(得分:0)

EACCES错误代码表示该进程没有在目标目录/文件中读/写的权限。与包管理器一样,这通常意味着无法将模块安装到目标目录。

这可以通过以超级用户(sudo ...)运行命令来解决,但最好只修复文件权限,以便运行该命令的帐户具有对目标目录的必要权限。

作为旁注,EACCES错误来自伟大的Linux本身 - 请参阅可能遇到的list of other error codes(或运行man errno)。

答案 2 :(得分:0)

将环境变量NODE_PATH定义为:

export NODE_PARENT=${HOME}/node-v0.12.0
export PATH=${NODE_PARENT}/bin:${PATH}  # so executables are found
export NODE_PATH=${NODE_PARENT}/lib/node_modules # so node can find modules

./configure   --prefix=${NODE_PARENT}

从源代码安装Node时执行此操作...这将为您提供节点和npm 并将避免所有此类权限错误...然后自己安装模块...不需要root

npm install -g some-global-module