1

我想要的只是在我的节点中安装 web3。

我的node版本是v8.9.4 web3版本是1.0.0-beta.46

但我不明白的是 scrypt 一直在失败。我只是运行节点,我看到我没有 scrypt 模块的可怕消息......

通常我只是安装我的模块而不是 -g 选项,而是 --save 一个。但是我无法解决我的问题,所以我只使用 -g 选项安装 scrypt

# npm install -g scrypt

但是错误消息我不明白为什么会发生在我身上?

# npm install -g scrypt

> scrypt@6.0.3 preinstall /opt/nodejs/lib/node_modules/scrypt
> node node-scrypt-preinstall.js

Error: Error: Command failed: ./configure
./configure: line 1904: config.log: Permission denied
./configure: line 1914: config.log: Permission denied


> scrypt@6.0.3 install /opt/nodejs/lib/node_modules/scrypt
> node-gyp rebuild

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/opt/nodejs/lib/node_modules/scrypt/build'
gyp ERR! System Linux 2.6.32-754.3.5.el6.x86_64
gyp ERR! command "/opt/nodejs/bin/node" "/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /opt/nodejs/lib/node_modules/scrypt
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! scrypt@6.0.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the scrypt@6.0.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2019-02-15T10_44_58_509Z-debug.log

我尝试将 web3 重新安装到我的模块中,将显示该消息。我认为 node gyp 是这个问题的关键,所以我可以向你咨询一下为什么会出现这个问题吗?

> scrypt@6.0.3 install /home/my_apps/node/node_modules/scrypt.js/node_modules/scrypt
> node-gyp rebuild

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/my_apps/node/node_modules/scrypt.js/node_modules/scrypt/build'
gyp ERR! System Linux 2.6.32-754.3.5.el6.x86_64
gyp ERR! command "/opt/nodejs/bin/node" "/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/my_apps/node/node_modules/scrypt.js/node_modules/scrypt
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 

> scrypt@6.0.3 install /home/my_apps/node/node_modules/web3-eth-accounts/node_modules/scrypt.js/node_modules/scrypt
> node-gyp rebuild

gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/my_apps/node/node_modules/web3-eth-accounts/node_modules/scrypt.js/node_modules/scrypt/build'
gyp ERR! System Linux 2.6.32-754.3.5.el6.x86_64
gyp ERR! command "/opt/nodejs/bin/node" "/opt/nodejs/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/my_apps/node/node_modules/web3-eth-accounts/node_modules/scrypt.js/node_modules/scrypt
gyp ERR! node -v v8.9.4
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok 
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: scrypt@6.0.3 (node_modules/scrypt.js/node_modules/scrypt):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: scrypt@6.0.3 install: `node-gyp rebuild`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! scrypt@6.0.3 install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the scrypt@6.0.3 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
4

1 回答 1

1

所以我认为这个错误告诉你你没有适当的访问文件系统的权限来写入这些文件夹。

我的第一个想法是,您只是不允许在安装“全局变量”的文件夹中写入,但在第二次尝试中,我认为您正在展示在通常的文件夹中执行此操作。那么,当您尝试安装为 --save 时,它​​是否仍然会给您错误?它只适用于这个模块?您是否有可能获得更多写入这些文件夹的权限?

于 2019-02-15T11:58:17.217 回答