1

我对 cPanel 几乎没有经验,但我需要在 cpanel 上设置 Laravel 应用程序。我真的很难解决这个问题。

以下是我正在采取的步骤:

  1. Git 签出存储库
  2. 设置 .env
  3. 作曲家安装
  4. 作曲家更新
  5. chmod -R 775 存储和 chmod 775 引导/缓存
  6. npm install -g npm bower yarn
  7. 纱线安装
  8. 凉亭安装
  9. npm 运行开发
  10. php工匠迁移:新鲜--seed

(所有步骤的原因是因为我正在设置我购买的主题,除了 cPanel 之外,它在任何地方都很好用。)

我遇到的问题是当我尝试安装 npm 时。

当我运行时,npm install我收到以下错误:

> pngquant-bin@3.1.1 postinstall /public_html/src/node_modules/pngquant-bin
> node lib/install.js

  ⚠ The `/public_html/src/node_modules/pngquant-bin/vendor/pngquant` binary doesn't seem to work correctly
  ⚠ pngquant pre-build test failed
  ℹ compiling from source
  ✖ Error: pngquant failed to build, make sure that libpng-dev is installed
    at ChildProcess.exithandler (child_process.js:294:12)
    at ChildProcess.emit (events.js:189:13)
    at maybeClose (internal/child_process.js:970:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)

我尝试了各种资源:

https://github.com/imagemin/pngquant-bin/issues/78

https://github.com/papandreou/node-pngquant/issues/14

我可以告诉你 pngquant 已安装(直接从 git 和 npm 安装尝试)仍然是同样的错误。

libpng-dev 已安装(我认为):

identify -list format | grep PNG

  JNG* PNG       rw-   JPEG Network Graphics
  MNG* PNG       rw+   Multiple-image Network Graphics (libpng 1.2.46,1.2.49)
  PNG* PNG       rw-   Portable Network Graphics (libpng 1.2.46,1.2.49)
       See http://www.libpng.org/ for details about the PNG format.
PNG24* PNG       rw-   opaque 24-bit RGB (zlib 1.2.3)
PNG32* PNG       rw-   opaque or transparent 32-bit RGBA
 PNG8* PNG       rw-   8-bit indexed with optional binary transparency

我试过这个:

npm install imagemin-pngquant@5.0.1 --save
npm install pngquant-bin@3.1.1

仍然得到同样的错误

[~/public_html/src]# npm install pngquant-bin@3.1.1 --save

> pngquant-bin@3.1.1 postinstall /public_html/src/node_modules/pngquant-bin
> node lib/install.js

  ⚠ The `/public_html/src/node_modules/pngquant-bin/vendor/pngquant` binary doesn't seem to work correctly
  ⚠ pngquant pre-build test failed
  ℹ compiling from source
  ✖ Error: pngquant failed to build, make sure that libpng-dev is installed
    at ChildProcess.exithandler (child_process.js:294:12)
    at ChildProcess.emit (events.js:189:13)
    at maybeClose (internal/child_process.js:970:16)
    at Socket.stream.socket.on (internal/child_process.js:389:11)
    at Socket.emit (events.js:189:13)
    at Pipe._handle.close (net.js:597:12)

我也尝试将它添加到 package.json

"resolutions": {
    "image-webpack-loader/imagemin-pngquant": "5.0.1"
  }

我的节点和 npm 版本是:

node -v v10.15.3

npm -v 6.9.0

最后,这是我的 bin 文件夹的样子:

[~/bin]# ls
./   bower@  node_modules/  npm-cli.js@  pngquant@  yarn.lock
../  node*   npm@           npx@         yarn@      yarnpkg@

对我来说,看起来 pngquant 已正确安装,但由于某种原因它没有找到 libpng-dev?想法?帮助?!请帮忙。

4

1 回答 1

0

首先确保你肯定有 libpng-dev 而不仅仅是 libpng

dpkg -l libpng-dev

如果没有返回东西,那么你没有它,所以安装它,你还需要 Essentials 包,所以确保你也有它:

sudo apt install build-essential libpng-dev

完成此操作后,您很可能需要删除 node_modules 文件夹

rm -rf node_modules

然后npm install再次运行。

于 2019-05-08T17:25:06.860 回答