Node.js imagemin sur CentOS
Je suis en train d'utiliser Node.js imagemin pour compresser beaucoup d'images sur mon serveur. J'aime utiliser imagemin parce que je sais à quel point il à des répertoires spécifiques.
J'utilise CentOS 6 et quand je lance mon fichier, j'obtiens l'erreur:
node_modules/imagemin/node_modules/imagemin-pngquant/node_modules/pngquant-bin/vendor/pngquant: /lib64/libc..6: la version " GLIBC_2.14' ne trouve pas
Aussi, quand j'ai installé imagemin avec npm install imagemin
, j'ai une erreur qui dit:
Erreur: pngquant n'a pas de construire, assurez-vous que libpng-dev est installé
Toutes les idées sur ce que je peux faire pour résoudre ce problème?
Il semble que vous n'avez pas
Qu'il a fait. J'ai essayé que plus tôt, mais je ne pouvais pas trouver le paquet au départ, je pensais que ça n'existait pas sur CentOS. Il a été nommé libpng-devel. Je vous remercie.
libpng-dev
installé. Sur CentOS, yum install libpng-dev
doit l'installer (pas sûr à 100% sur le nom du paquetage).Qu'il a fait. J'ai essayé que plus tôt, mais je ne pouvais pas trouver le paquet au départ, je pensais que ça n'existait pas sur CentOS. Il a été nommé libpng-devel. Je vous remercie.
OriginalL'auteur Sean | 2015-04-28
Vous devez vous connecter pour publier un commentaire.
(Problème de facto déjà résolu dans les commentaires - mais pour l'amour de l'achèvement et les générations futures, je poste une réponse réelle).
Cette erreur signifie que le système manque d'
libpng
développement de la bibliothèque, qui est nécessaire à l'installation deimagemin
Node.JS le module. Pour l'installer sur CentOS 6, vous devez émettre cette commande:yum install libpng-devel
Veuillez noter que le gestionnaire de package (ici -
yum
) et le nom du package (libpng-devel
) peut varier entre les différentes distributions Linux.libpng-devel
installé, la version de 1.5.13-7.J'ai trouvé une solution par la suite et j'ai partagé comme une réponse distincte. Merci!
travailler avec ajouter yum install libpng-devel pngquant
OriginalL'auteur bardzusny
J'ai eu le même problème avec CentOS 7, même avec
libpng-devel
installé. Il semble que le paquet porte un binaire précompilé programmenode_modules/pngquant-bin/vendor/pngquant
qui est en quelque sorte incompatible avec l'installation de Linux (CentOS 7 derniers).J'ai fait une solution au problème par le remplacement de ce fichier binaire avec celle qui est disponible pour CentOS 7.
Je suis d'installer le paquet officiel
pngquant
avecyum
, d'abord. Alors je suis d'installer le nœud de modules. Vous pouvez supprimer lenode_modules
dossier si vous le souhaitez avant d'installer l'action. Ses pas nécessaire, cependant.L'erreur sera affiché comme d'habitude (le fichier de programme n'est pas encore remplacé):
Cependant, après le remplacement du fichier binaire tout devrait bien se passer.
sh
yum install libpng-devel pngquant
npm install
rm -rf node_modules/pngquant-bin/vendor/pngquant
ln -s /usr/bin/pngquant node_modules/pngquant-bin/vendor/pngquant
Après que vous pouvez exécuter n'importe quelle commande que vous aimez, "imagemin:dynamique", etc. Il devrait fonctionner correctement.
Résumé
Généralement parlant, le problème semble être à l'intérieur de la
pngquant-bin
nœud package. Cette solution peut aider pour d'autres distributions Linux.La solution est d'installer le officiellement pris en charge version de
pngquant
avec le système d'exploitation le gestionnaire de package et de remplacer le binaire à l'intérieur de lapngquant-bin
vendeur dossier après son installation.Mise à jour
En outre, il y a un problème récent qui est toujours lié avec
pngquant
package npm. Il semble qu'il y a un buggy libération de il - verrouiller le nécessairepngquant
paquet dans votrepackage.json
à l'ancienne version (la dernière correctement version en cours d'exécution pour vous).OriginalL'auteur Rolice
Les solutions précédentes n'ont pas fonctionné pour moi. J'utilise centos 7.4
Lors de l'exécution de l'exécution de
J'ai reçu le message d'erreur:
Tout en essayant d'installer
libpng-devel
, il dit qu'il est déjà installé.Solution
Mise à jour de la nodejs & npm version si c'est à l'aide de vieux.
J'ai mis à jour à
Nodejs Version
v8.10.0
mnp version
5.7.1
Vérifier l'installation de libpng-devel sur votre serveur.
libpng-1.5.13-7.el7_2.x86_64
libpng-devel-1.5.13-7.el7_2.x86_64
Si vous utilisez epel repo ensuite il faudra installer la version la plus récente. Pour plus d'libpng version, consultez
J'ai installé
déplacé nœud modules
Puis tapez
OriginalL'auteur uday
Voici comment j'ai résolu le problème pour mon cas:
Supprimer
node_modules
:Installer les dépendances suivantes:
Reconstruire dépendances. J'utilise
yarn
:OriginalL'auteur Divyanshu Maithani