获取有关" node-gyp rebuild"的错误但似乎无法找出原因?
答案 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