El editor de vídeo Resolve de Blackmagic Design, V14.0.1, requiere libpng12. Lamentablemente, sólo libpng16se proporciona con la nueva versión 17.10.
¿Hay alguna manera de volver a libpng12 en 17.10? Si es así, ¿cómo obtengo libpng12? Synaptic no lo incluye cuando lo busco.
Respuesta1
HayPaquetes de Ubuntu paralibpng12-0
para Trusty (14.04LTS) y xenial (16.04LTS), pero no para 17.10. Debe solicitar al fabricante del software (es decir, Blackmagic Design) que actualice el programa y/o el instalador para utilizar la versión más reciente libpng16-16
.
Como solución alternativa, puede descargar e instalar el .deb
paquete de Xenialdesde la página web de Ubuntuantes de instalar el editor de vídeo Resolve de Blackmagic Design.
Instalación
libpng12
$ wget http://mirrors.kernel.org/ubuntu/pool/main/libp/libpng/libpng12-0_1.2.54-1ubuntu1_amd64.deb $ sudo dpkg -i libpng12-0_1.2.54-1ubuntu1_amd64.deb
NOTA:La instalación de paquetes de distribuciones anteriores puede dañar su
apt
sistema de instalación.
¿Es seguro instalar el libpng12
paquete de Xenial (16.04LTS)?
Usar paquetes de distribuciones más antiguas puede resultar peligroso. Puede dañar el apt
sistema de instalación porque los paquetes más antiguos pueden introducir dependencias con paquetes no existentes o reemplazar paquetes que requieren las nuevas versiones. Intente utilizar paquetes y repositorios para la versión de Ubuntu que esté utilizando, es decir, los repositorios oficiales de Ubuntu y los repositorios PPA conocidos (que prueban sus paquetes).
Para comprobar si la instalación de libpng12
puede romper el apt
, verifiquéla información del paquete.
Depende
libpng12
delibc6 (>= 2.14)
yzlib1g (>= 1:1.1.4)
que se incluyen en las versiones recientes de Ubuntu.$ apt-cache policy libc6 # gives me 2.24-9ubuntu2.2 $ apt-cache policy zlib1g # gives me 1.2.11dfsg-0ubuntu1
Tenga en cuenta que ningún otro paquete de Ubuntu requiere una versión reciente
libpng12
porque no está incluido en el repositorio. Los programas más recientes dependen delibpng16-16
ambas bibliotecas y pueden coexistir.- Creo que es muy poco probable que este paquete infrinja el
apt
.
No intentes instalar un paquete de una distribución anterior si no estás seguro de lo que estás haciendo.
Respuesta2
En lugar de utilizar el paquete binario, puedes compilar libpng
.
- Si tiene el código fuente del programa que desea instalar, puede utilizar el código fuente original. Después de instalar la biblioteca, puede usarla para configurar y compilar otras aplicaciones.
- Si no tienes el código fuente del programa sino sólo un
.deb
instalador, por ejemplo, si el programa es un producto comercial, deberás instalar un paquete para evitar errores durante la instalación. Puede crear el paquete a partir del código fuente siguiendo las instrucciones a continuación.
Compilando libpng desde el código fuente oficial
Tenga en cuenta queEl antiguo libpng v1.2.x puede tener muchas vulnerabilidades.. Se recomienda utilizar la versión 1.2.x más reciente defuenteforjaogithub. Esto es para la versión v.1.2.59.
Instalar los paquetes para compilar software (si no están instalados)
$ sudo apt-get install build-essential
Obtener y extraer el código fuente.
$ wget https://github.com/glennrp/libpng/archive/v1.2.59.tar.gz $ tar xvfz v1.2.59.tar.gz
Compile e instale la biblioteca.
$ cd libpng-1.2.59/ $ ./configure $ make check $ sudo make install
NOTA:La instalación de la biblioteca no establecerá la dependencia
libpng12
como se cumple enapt
. Debe utilizar un.deb
paquete para instalarlo y admitir la instalación de otros.deb
archivos que dependen de él. Para crear el.deb
paquete correspondiente, puede utilizar las siguientes instrucciones.
Usando el código fuente del paquete Ubuntu
El libpng12-0
paquete corresponde a libpng 1.2.54
. Ubuntu tiene una versión personalizada que llamaron1.2.54-1ubuntu1
.
Instale los paquetes para compilar software y crear paquetes de Ubuntu (si no están instalados)
$ sudo apt-get install build-essential fakeroot dpkg-dev devscripts
Descargue archivos de código fuente usando el
.dsc
archivo de la página$ dget -d http://archive.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng_1.2.54-1ubuntu1.dsc
Extraer el código fuente aplicando el parche proporcionado por Ubuntu
$ dpkg-source -x libpng_1.2.54-1ubuntu1.dsc
Verifique las dependencias del paquete.
$ cd libpng-1.2.54/ $ dpkg-buildpackage -rfakeroot -b
Muestra dependencias de compilación no satisfechas. En mi caso...
: dpkg-checkbuilddeps: error: Unmet build dependencies: debhelper (>= 8.1.3) libtool automake autoconf zlib1g-dev
Instalar las dependencias
$ sudo apt-get install debhelper libtool automake autoconf zlib1g-dev
Compilar
$ fakeroot debian/rules binary
Los paquetes resultantes se ubicarán en la carpeta principal.
../libpng12-0_1.2.54-1ubuntu1_amd64.deb ../libpng12-dev_1.2.54-1ubuntu1_amd64.deb ../libpng3_1.2.54-1ubuntu1_amd64.deb
Utilice el paquete resultante
$ cd .. $ sudo dpkg -i libpng12-0_1.2.54-1ubuntu1_amd64.deb
NOTA:Compilar e instalar paquetes para distribuciones antiguas es tan peligroso comousando paquetes binarios para distribuciones antiguas. El proceso de compilación descrito para el
libpng12
paquete utiliza solo paquetes en los repositorios de Ubuntu 17.x y no genera errores. Creo que usar el paquete resultante no romperá el archivoapt
.
Respuesta3
Esta fuente funcionó para mí en Ubuntu 18:
sudo echo 'deb http://cz.archive.ubuntu.com/ubuntu trusty main universe' \ > /etc/apt/sources.list.d/extra.list
sudo apt update
sudo apt-get install libpng12-0
sudo rm /etc/apt/sources.list.d/extra.list
Lo encontréaquíAl intentar instalar los controladores de la impresora y parece estar funcionando.
Respuesta4
En mi opinión, es más seguro compilar desde la fuente que utilizar paquetes antiguos de repositorios antiguos.
El mejor consejo que puedo darte es presentar un informe de error a Blackmagic, necesitan actualizar sus dependencias.
https://www.blackmagicdesign.com/support/
Para compilar, vaya al paquete de ubuntu correspondiente para identificar el paquete y la fuente ascendente.
https://packages.ubuntu.com/xenial/libpng12-0
Entonces quieres "libpng_1.2.54.orig.tar.xz"
https://sourceforge.net/projects/libpng/files/libpng12/older-releases/1.2.54/
descargar, extraer, compilar, instalar (comenzando después de la descarga y extrayendo la bola tar).
cd libpng-1.2.54
./configure --prefix=/usr/local
make
sudo make install
Para eliminar nuevamente (si es necesario)
#run within libpng-1.2.54 directory
sudo make uninstall
Entiendo que parecen algunos pasos adicionales, pero es trivial descargarlo y compilarlo de esta manera y no hay riesgo de que se rompa el apt.