首页 > 解决方案 > Resolve: "Unknown system error -86" error when installing imagemin-pngquant/imagemin-optipng on Apple Silicon (M1)

问题描述

Here's the error:

npm ERR! code 1
npm ERR! path /[...]/node_modules/pngquant-bin
npm ERR! command failed
npm ERR! command sh -c node lib/install.js
npm ERR! ⚠ spawn Unknown system error -86
npm ERR!   ⚠ pngquant pre-build test failed
npm ERR!   ℹ compiling from source
npm ERR!   ✖ Error: pngquant failed to build, make sure that libpng is installed
npm ERR!     at /[...]/node_modules/execa/index.js:231:11
npm ERR!     at runMicrotasks (<anonymous>)
npm ERR!     at processTicksAndRejections (node:internal/process/task_queues:94:5)
npm ERR!     at async Promise.all (index 0)

Note: This is a purely native execution (no Rosetta translation).

Looks like there's an issue whenever a package needs to build a component in C.


Update 1.

I have created issues with the following repositories:

  1. pngquant-bin (imagemin-pngquant)
  2. optipng-bin (imagemin-optipng)
  3. mozjpeg (imagemin-mozjpeg)

标签: javascriptnode.jsnpmgulp-imageminpngquant

解决方案


1.使用受支持的imagemin包

以下 imagemin 包将安装在 Apple Silicon 上:

PNG:
imagemin-oxipng
imagemin-zopfli

GIF:
imagemin-gifsicle

JPEG:
imagemin-jpegtran

2.使用罗塞塔2

链接到 Apple 支持的官方安装说明


推荐阅读