0

当我尝试安装nodebb并使用命令“nodebb setup”初始化它,然后自动安装第三方包时,它总是遇到错误,错误消息如下。</p>

是的,总是这样sharp,我讨厌那样。

我不知道为什么没有权限,我是 root 角色。我试图自己 mkdir,但 npm 将其删除,然后告诉我,“权限被拒绝”,对不起??????

我尝试自己安装sharpnpm install sharp --ignore-scripts安装依赖项。通过这种方式我可以运行 nodebb 服务器,但是当我尝试从浏览器上传图像并对其进行锐化时,nodebb 出现如下错误

这是安装的一些错误消息:

[root@bbs NodeBB]# npm install sharp
> sharp@0.23.0 install /home/bbs/NodeBB/node_modules/sharp
> (node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)
info sharp Using cached /root/.npm/_libvips/libvips-8.8.1-linux-x64.tar.gz
ERR! sharp EACCES: permission denied, mkdir '/home/bbs/NodeBB/node_modules/sharp/vendor'
info sharp Attempting to build from source via node-gyp but this may fail due to the above error
info sharp Please see https://sharp.pixelplumbing.com/page/install for required dependencies
gyp ERR! configure error 
gyp ERR! stack Error: EACCES: permission denied, mkdir '/home/bbs/NodeBB/node_modules/sharp/build'
gyp ERR! System Linux 3.10.0-957.el7.x86_64
gyp ERR! command "/usr/share/node-v12.9.1-linux-x64/bin/node" "/usr/share/node-v12.9.1-linux-x64/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/bbs/NodeBB/node_modules/sharp
gyp ERR! node -v v12.9.1
gyp ERR! node-gyp -v v5.0.3
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! sharp@0.23.0 install: `(node install/libvips && node install/dll-copy && prebuild-install) || (node-gyp rebuild && node install/dll-copy)`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the sharp@0.23.0 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-09-11T06_23_30_748Z-debug.log

这是上传图片时的一些错误消息:

Something went wrong installing the "sharp" module

Cannot find module '../build/Release/sharp.node'
Require stack:
- /home/bbs/NodeBB/node_modules/sharp/lib/constructor.js
- /home/bbs/NodeBB/node_modules/sharp/lib/index.js
- /home/bbs/NodeBB/src/file.js
- /home/bbs/NodeBB/require-main.js
- /home/bbs/NodeBB/app.js

- Remove the "node_modules/sharp" directory, run "npm install" and look for errors
- Consult the installation documentation at https://sharp.pixelplumbing.com/en/stable/install/
- Search for this error at https://github.com/lovell/sharp/issues
4

4 回答 4

2

我解决了,但我不知道为什么

通过这个命令:sudo chown -R $(whoami) node_modules/

我一直用root,不错的电源

于 2019-09-11T09:50:03.603 回答
1

将 Node 从 v10 升级到 v12 后,我遇到了这个错误。我的项目仍然使用node_modules在我拥有 v10 时已安装的那些。所以我猜他们的安装方式与另一个 Node 版本不同。以下帮助了我:

rm -rf node_modules
rm package-lock.json
npm install

现在每个安装的节点模块在安装过程中都使用了最新的节点版本。

于 2020-03-26T15:39:34.160 回答
0

如果你和我住在同一个国家,那么最大的原因就是GFW。我曾经遇到过和你一样的问题。您可以尝试为此修改 npm 镜像源。

于 2020-01-19T15:16:51.687 回答
0

我在安装 NodeBB 1.12.1时遇到了同样的错误。问题似乎出在过时的尖锐版本上。我解决了它,纠正了 package.json 中所需的清晰版本。这是解决方案:

  • 克隆存储库
    git clone https://github.com/NodeBB/NodeBB.git nodebb
  • 结帐到所需的分支
    git checkout v1.12.1
  • 转到 ~/nodebb/install 并在 package.json 中将所需的锐化版本更改为 0.22.1
    {"dependencies: {
    ...
           "sharp": "0.24.0",
    ...
    }
  • 现在,开始设置过程
    ./nodebb setup

现在一切都应该正常了。

于 2020-03-27T13:29:18.893 回答