KAPITALSIN

JUEGOS/SOFTWARE/HARDWARE => SOFTWARE => Mensaje iniciado por: Fl0ppy en 17 de Febrero de 2018, 02:06:27 pm

Título: Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 17 de Febrero de 2018, 02:06:27 pm
Citar
pngquant is a command-line utility and a library for lossy compression of PNG images.

The conversion reduces file sizes significantly (often as much as 70%) and preserves full alpha transparency. Generated images are compatible with all web browsers and operating systems.

Features
High-quality palette generation using a combination of vector quantization algorithms.
Unique adaptive dithering algorithm that adds less noise to images than the standard Floyd-Steinberg.
Easy to integrate with shell scripts, GUIs and server-side software.
Fast mode for real-time processing/large numbers of images.

https://pngquant.org

Creada versión nueva del script (26-02-2022) con muchos cambios, ya que los autores han migrado a rust


El ejecutable está comprimido con el UPX

El código nuevo (26-02-2022)
Código: [Seleccionar]
#
# pngquant script compiler REV 26022022 by KAPITALSIN
#
# 2602022
# Los autores han migrado a rust con lo cual el código mediant git se ha reemplazado por el código "antiguo",
# es por ello que el script de compilacińo se ha modificado bastante, la lista de cambios es larqa

# Eliminada la dependéncia del zlibg1-dev
# Añadido parámetros del zlib para LCMS2
#
sudo apt-get install make libc6-dev
time_start=`date +%s`
wget https://github.com/kornelski/pngquant/archive/refs/tags/2.17.0.zip -O pngquant.zip
unzip pngquant.zip

mv pngquant-2.17.0 pngquant
cd pngquant

wget https://github.com/ImageOptim/libimagequant/archive/refs/tags/2.17.0.zip -O libimagequant.zip
unzip -j -o libimagequant.zip -d lib


wget https://fossies.org/linux/misc/libpng-1.6.37.tar.xz
tar xvfa libpng-1.6.37.tar.xz
cd libpng-1.6.37
wget https://deac-ams.dl.sourceforge.net/project/libpng-apng/libpng16/1.6.37/libpng-1.6.37-apng.patch.gz
gzip -cd libpng-1.6.37-apng.patch.gz | patch -p1

wget https://www.zlib.net/zlib1211.zip
unzip zlib1211.zip
cd zlib-1.2.11
./configure --static --prefix=$PWD
make -j4 install
cd ..
CPPFLAGS="-I$PWD/zlib-1.2.11/include" LDFLAGS="-L$PWD/zlib-1.2.11/lib" LIBS=-lpthread ./configure --prefix=$PWD --enable-static && make -j4
#LIBS=-lpthread ./configure --prefix=$PWD --enable-static && make -j4
cd ..
wget https://netcologne.dl.sourceforge.net/project/lcms/lcms/2.9/lcms2-2.9.tar.gz
tar xvfa lcms2-2.9.tar.gz
cd lcms2-2.9/
./configure --without-zlib --enable-static && make -j4
cd ..
./configure --with-lcms2 --with-libpng="libpng-1.6.37" --extra-cflags="-Ilibpng-1.6.37/zlib-1.2.11" --extra-ldflags="libpng-1.6.37/zlib-1.2.11/libz.a"
sed -i 's/$(CC) $(OBJS) $(CFLAGS) $(LDFLAGS)/$(CC) $(OBJS) $(CFLAGS) $(LDFLAGS) -static -pthread/g' Makefile
make -j4 && strip pngquant

time_end=`date +%s`
time_exec=`expr $(( $time_end - $time_start ))`
echo "EL PROCESO DE COMPILADO HA TARDADO UN TOTAL DE $(($time_exec / 60)) minutos y $(($time_exec % 60)) segundos."

Adjunto el script y el binario para 64 bits

Sitios utilizados

https://github.com/kornelski/pngquant/issues/241
https://pngquant.org/install.html
http://www.linuxfromscratch.org/blfs/view/cvs/general/lcms2.html
http://www.linuxfromscratch.org/blfs/view/svn/general/libpng.html
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 18 de Mayo de 2019, 01:48:22 am
Creada versión actualizada a la 2.12.2, la anterior era la 2.11.7
Actualizado el adjunto  :ok:

Citar
version 2.12
------------
- improved speed on large images
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 13 de Noviembre de 2020, 05:02:44 pm
Creada versión nueva actualizada a la 2.13.0
Actualizado adjunto en post principal

Changelog
Citar
version 2.13
 - small speed and quality improvements
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: marc731116 en 13 de Noviembre de 2020, 05:24:35 pm
gracias, checando como funciona  :ok: :ok:
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 17 de Diciembre de 2020, 10:10:44 pm
Creada versión nueva con estos cambios (son solo de compilación, el programa no ha cambiado)

1-Ahora se han integrado dentro del binario las librerias externas como la zlib y la glibc
2-El script ha cambiado para hacer esos cambios
3-El ejecutable ha aumentado unos 500kb's
4-Actualizada la libreria libpng 1.6.34 por la 1.6.37

Si la versión antigua ya te iba bien no es necesario descargar esta nueva

El ejecutable está comprimido con el UPX (https://github.com/upx/upx/releases/tag/v3.96)
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 23 de Agosto de 2021, 12:32:39 am
Creada versión nueva actualizada a la 2.15.1
Actualizado adjunto en post principal

Changelog
Citar
version 2.13-2.15
------------
- speed and quality improvements
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 31 de Agosto de 2021, 10:48:47 pm
Creada versión nueva de los scripts del compilador, tanto como el que usa git como el que no, ahora instala todas las dependéncias necesarias para su compilado
Los post y sus adjuntos se han actualizado  :ok:

Código: [Seleccionar]
Eliminada la dependéncia del zlibg1-dev
Se ha vuelto a compilar y esta vez bajo ARCO Linux (https://arcolinux.com/), el resultado, un ejecutable unos 100kb más pequeño  :ouo:, (precomprimido con upx) es el fichero pngquant.2.15.1.x86_64.arch.bin
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 07 de Septiembre de 2021, 01:49:55 am
Creada versión compilada con MUSL, ahora ocupa 400 kb MENOS y es estático  :fuckyeah:

https://musl.libc.org/

http://www.etalabs.net/compare_libcs.html

Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: paddddd en 11 de Septiembre de 2021, 01:31:11 am
Creada versión compilada con MUSL, ahora ocupa 400 kb MENOS y es estático  :fuckyeah:

https://musl.libc.org/

http://www.etalabs.net/compare_libcs.html



Como diria el Mandaloriano, ese es el camino.   ;D

(https://cdn-images.imagevenue.com/b8/15/b9/ME13TU4Y_o.jpg)

(https://cdn-thumbs.imagevenue.com/77/c2/fb/ME13TU4Y_t.jpg) (https://www.imagevenue.com/ME13TU4Y)

Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 03 de Octubre de 2021, 09:05:01 pm
Creada versión nueva (2.16) compilada con MUSL

Citar
version 2.16
------------
- reduced stack usage, prevenitng stack overlfow in pathological cases

Y actualizado el script para versión que no usa GIT
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 24 de Diciembre de 2021, 11:39:49 pm
Citar
version 2.17
------------
- fix for Unicode filenames on Windows
- builds for ARM
- small quality improvements

Actualizada versión y añadido script para compilarlo con musl
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 26 de Febrero de 2022, 01:17:41 pm
Creada versión nueva del script, ya que los autores han migrado a rust y el anterior pues ya no era válido  :ok:
Actualizado post principal
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 26 de Febrero de 2022, 05:59:03 pm
Creada versión estática 3.0.0-beta.7 compilada con Rust (solo GNU/Linux x86_64)
Actualizado post principal
Título: Re:Como compilar la última versión del pngquant en Mint
Publicado por: Fl0ppy en 27 de Febrero de 2022, 06:45:26 pm
Creada versión nueva de 64 bits con muslc y parámetro -Os de compilación reduciendo el tamaño unos 39 KB.