如何在 Windows 上安装 libpng-dev?

Posted

技术标签:

【中文标题】如何在 Windows 上安装 libpng-dev?【英文标题】:How to install libpng-dev on windows? 【发布时间】:2014-12-18 18:43:09 【问题描述】:

我正在尝试为节点安装 imagemin-pngquant 模块:

https://www.npmjs.org/package/imagemin-pngquant

但是,当我运行命令时

npm install imagemin-pngquant --save-dev

我收到以下错误:

  warn : pngquant pre-build test failed
  info : compiling from source
 error : Error: pngquant failed to build, make sure that libpng-dev is installed
 at ChildProcess.exithandler (child_process.js:637:15)
 at ChildProcess.EventEmitter.emit (events.js:98:17)
 at maybeClose (child_process.js:735:16)
 at Socket.<anonymous> (child_process.js:948:11)
 at Socket.EventEmitter.emit (events.js:95:17)
 at Pipe.close (net.js:466:12)

如何安装 pngquant 需要的 libpng-dev 库?

【问题讨论】:

【参考方案1】:

使用 Windows Power Shell,作为 管理员npm install --global --production windows-build-tools

如果您之前尝试过任何npm 安装尝试 - 您肯定有过,现在正在阅读这些行 - 您必须清理所有内容,并重新安装依赖项:$ rm node_modules -R$ rm package-lock.json$ npm install

祝你好运!

【讨论】:

【参考方案2】:

在 Windows 下安装 gulp-imagemin 时,我遇到了类似的缺少 libpng-dev 的问题。我发现 libpng-dev 不存在于 Windows,仅适用于 MacOS 和 Linux。这是我收到的错误消息:

enter > node lib/install.js
  ‼ Request to https://raw.github.com/imagemin/pngquant-bin/v3.0.0/vendor/win/pngquant.exe failed
  ‼ pngquant pre-build test failed
  i compiling from source
  × Error: pngquant failed to build, make sure that libpng-dev is installed
at ChildProcess.exithandler (child_process.js:744:12)
at ChildProcess.emit (events.js:110:17)
at maybeClose (child_process.js:1008:16)
at Socket.<anonymous> (child_process.js:1176:11)
at Socket.emit (events.js:107:17)
at Pipe.close (net.js:476:12)

所以,我尝试用

安装 pngquant-bin
npm install --save-dev pngquant-bin

但收到或多或少相同的错误消息。注意版本号 3.0.0。 然后我尝试像这样安装 pngquant(没有-dev):

npm install --save-dev pngquant --msvs_version=2013

它成功安装了 pngquant 2.0.0 版。之后我还可以安装 gulp-imagemin。

我不确定 2013 年库版本是否在这里发挥了任何作用。

【讨论】:

只是想补充一点,有时在 Windows 上使用 C++ 运行时库是安装 nodejs 组件的唯一方法。一种这样的组件是例如。浏览器同步。当然,您需要在您的机器上安装这些库。幸运的是,安装免费的 Visual Studio 2013 Community Edition 就足够了。 我不得不使用 '--msvs_version=2017' 但使用这个标志对我有用。 我在 2015 年和 2013 年都试过了,但都没有成功。

以上是关于如何在 Windows 上安装 libpng-dev?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Windows 上安装 PyCrypto?

如何在Windows上安装FFmpeg程序

如何在 Windows 上安装 Node 14 版本

如何在 Windows 上安装 Poppler?

如何在 Windows 上安装 IMDbPY?

如何在Windows上安装FFmpeg程序