我想开始学习使用libp2p,所以开始学习教程文档,然后马上就遇到了问题。
文档:https://docs.libp2p.io/tutorials/getting-started/javascript/
接着,我找到了"Run Libp2p“头文件。运行脚本时,我得到错误消息Error: Cannot find module 'libp2p'
使用sudo npm install libp2p安装模块时,读取以下内容时出错:
ursaNative bindings compilation fail. This is not an issue. Modules that depend on it will use fallbacks. fs.js:115 throw err; ^
Error: EACCES: permission denied, open './stdout.log'
at Object.openSync (fs.js:439:3)
at Object.writeFileSync (fs.js:1190:35)
at Object.<anonymous> (/home/foss/hello-libp2p/node_modules/ursa-optional/rebuild.js:13:10)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:742:12)
at startup (internal/bootstrap/node.js:283:19)
npm WARN hello-libp2p@1.0.0 No description
npm WARN hello-libp2p@1.0.0 No repository field.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ursa-optional@0.10.1 install: `node rebuild.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ursa-optional@0.10.1 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/2020-03-29T11_05_48_715Z-debug.log`
我真的不确定为什么会有错误的权限被拒绝的部分,因为这是因为sudo.The问题似乎是围绕着ursa脚本。虽然这可能是可选的,但我不确定。以前使用过libp2p的人见过这个吗?
我在ubuntu 19.10上使用node12.16.1和npm6.13.4
发布于 2020-03-29 19:45:50
我想通了。我需要这样做,而不是在手动安装二进制文件后运行sudo npm i libp2p,我只需跳过sudo,一切都很好。这会导致一个问题,因为我现在不能全局安装模块,因为使用sudo会抛出no npm命令found……我不太确定如何将npm路径添加回sudo的命令中,或者为什么npm在sudo中不存在,而是定期出现……这很奇怪。可能会用其他本地支持节点v12而不是v10的发行版来解决。希望20.04 this能解决这个问题。
https://stackoverflow.com/questions/60913358
复制相似问题