2014-10-23 34 views
5

Sto cercando di installare il modulo imagemin-pngquant per il nodo:Come installare libpng-dev su windows?

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

Tuttavia, quando si esegue il comando

npm install imagemin-pngquant --save-dev 

ottengo l'errore sotto:

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) 

Come posso installare la libreria libpng-dev richiesta da pngquant?

risposta

1

Ho avuto un problema simile alla mancanza di libpng-dev durante l'installazione di gulp-imagemin sotto Windows. Ho scoperto che libpng-dev non esiste per Windows, solo per MacOS e Linux. Ecco il messaggio di errore che ho ottenuto:

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) 

Così, ho provato ad installare pngquant-bin con

npm install --save-dev pngquant-bin 

ma ha ottenuto più o meno lo stesso messaggio di errore. Si noti il ​​numero di versione 3.0.0. Poi ho provato ad installare pngquant (senza -dev) come questo:

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

ed installato con successo pngquant la versione 2.0.0. Dopo di ciò, ho anche potuto installare gulp-imagemin.

Non sono sicuro se la versione della libreria 2013 abbia avuto alcun ruolo qui.

+0

Volevo solo aggiungere che l'utilizzo delle librerie di runtime C++ su Windows a volte è l'unico modo per installare i componenti nodejs. Uno di questi componenti è ad es. Browser-sync. Naturalmente, è necessario che tali librerie siano installate sul proprio computer. Fortunatamente, l'installazione gratuita di Visual Studio 2013 Community Edition è sufficiente. – Madrus