
Necesitaba ejecutar la libpng
utilidad Ubuntu convert
y, cuando lo hice, recibí un mensaje de error que indicaba que mi versión libpng
estaba desactualizada y debía actualizarse. Entonces, seguí la ruta habitual apt-get install
, pero por razones que ahora ya no recuerdo, esto no resolvió el problema. Aquí es donde las cosas se complicaron.
Descargué la fuente de libpng
, hice un make y un make install. Si bien se creó una biblioteca para compartir en /usr/local/lib
, convertir ahora informa:
convert: error while loading shared libraries: libpng.so.2: cannot open shared object file: No such file or directory
Siguiendo el consejo de una persona útil en otra parte de StackExchange, lo intenté apt-get install
nuevamente, intentando obtener e instalar los paquetes libpng12-dev
y libpng12-0
. Sin embargo, ambos intentos generaron los mensajes.
libpng12-dev is already the newest version
libpng12-0 is already the newest version
...y entonces no se instaló nada. Probablemente mis torpes intentos de encontrar la fuente hayan arruinado las cosas. ¿Hay alguna manera de limpiar las cosas? Por ejemplo, ¿instalar una versión anterior de libpng y luego instalar la última versión?
Más tarde:
Por sugerencia de dogbert, consulté el artículo enhttps://www.debian-administration.org/article/176/Reinstalling_packages_to_fix_problemsy descubrí que podía forzar la eliminación de un paquete sin eliminar también todos los paquetes dependientes:
dpkg --purge --force-depends libpng12-0
Así que lo hice y luego lo reinstalé libpng12-0
. Sin embargo, convert
todavía informa el mismo error. Bien, tal vez necesite reinstalar convert
ya que posiblemente la libpng12-0
biblioteca no esté donde se espera que esté. convert
es parte de imagemagick
, así que lo desinstalé. Sin embargo, convert
todavía estaba disponible en la línea de comando, por lo que la desinstalación imagemagick
no lo elimina. Reinstalado imagemagick
. Mismos resultados: convert
todavía se queja de que no puede encontrarlo libpng.so.2
.
Busqué en todo el disco duro y descubrí que no libpng.so*
existe ningún archivo en ninguna parte. Aparentemente, la instalación del paquete no crea el archivo necesario.
Respuesta1
Se supone que libpng.so.2 es la biblioteca compartida para libpng-1.0.x (la versión actual es 1.0.63). Tiene "convertir" (parte de imagemagick) que aparentemente se creó con libpng-1.0.x, por lo que necesita eliminar y reinstalar imagemagick a través de apt-get. Una vez que esté funcionando, puede intentar nuevamente instalar una versión más nueva de imagemagick, desde imagemagick.org, que debería funcionar bien con libpng12.