L'éditeur vidéo de Blackmagic Design, V14.0.1, requiert libpng1 2. Malheureusement, seule la version 17.10 de libpng1 6 est fournie.
Est-il possible de revenir à libpng12 sous 17.10? Si oui, comment puis-je obtenir libpng12 - synaptic ne le répertorie pas lorsque je le recherche.
Il existe paquets Ubuntu pour libpng12-0
pour trusty (14.04LTS) et xenial (16.04LTS), mais pas pour 17.10. Vous devez demander au fabricant du logiciel (Blackmagic Design) de mettre à jour le programme et/ou le programme d’installation pour utiliser le libpng16-16
le plus récent.
Pour contourner le problème, vous pouvez télécharger et installer le package .deb
pour Xenial à partir de la page Web Ubunt avant d'installer l'éditeur de vidéos Resolve de Blackmagic Design.
Installation de 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
REMARQUE: L'installation de paquetages à partir de distributions plus anciennes risque d'endommager votre système d'installation
apt
.
Est-il prudent d’installer le package libpng12
depuis Xenial (16.04LTS)?
Utiliser des paquets de distributions plus anciennes peut être dangereux. Cela peut endommager le système d'installation apt
car des packages plus anciens peuvent introduire des dépendances vers des packages non existants ou remplacer les packages requis par les nouvelles versions. Essayez d’utiliser des packages et des référentiels pour la version Ubuntu que vous utilisez, c’est-à-dire les référentiels officiels Ubuntu et les référentiels PPA connus (qui testent leurs packages).
Pour vérifier si l'installation de libpng12
peut casser le apt
, j'ai vérifié les informations sur le paquet .
Le libpng12
dépend de libc6 (>= 2.14)
et de zlib1g (>= 1:1.1.4)
qui sont inclus dans les versions récentes d’Ubuntu.
$ apt-cache policy libc6 # gives me 2.24-9ubuntu2.2
$ apt-cache policy zlib1g # gives me 1.2.11dfsg-0ubuntu1
Notez qu'aucun autre package Ubuntu ne nécessite une version récente de libpng12
car celle-ci n'est pas incluse dans le référentiel. Les programmes les plus récents dépendent de libpng16-16
et les deux bibliothèques peuvent coexister.
apt
.N'essayez pas d'installer un paquet d'une distribution plus ancienne si vous n'êtes pas sûr de ce que vous faites.
Au lieu d'utiliser le paquet binaire, vous pouvez compiler libpng
name__.
.deb
, par exemple si le programme est un produit commercial, vous devez installer un package pour éviter les erreurs lors de l'installation. Vous pouvez créer le package à partir du code source en suivant les instructions ci-dessous.Compiler libpng à partir du code source officiel
Notez que ancienne libpng v1.2.x peut comporter de nombreuses vulnérabilités . Il est recommandé d'utiliser la version 1.2.x la plus récente de sourceforge ou github . Ceci est pour la version v.1.2.59.
Installez les packages pour compiler le logiciel (s'ils ne sont pas installés)
$ Sudo apt-get install build-essential
Obtenir et extraire le code source
$ wget https://github.com/glennrp/libpng/archive/v1.2.59.tar.gz
$ tar xvfz v1.2.59.tar.gz
Compiler et installer la bibliothèque
$ cd libpng-1.2.59/
$ ./configure
$ make check
$ Sudo make install
REMARQUE: L'installation de la bibliothèque ne définira pas la dépendance sur
libpng12
telle que définie dansapt
name__. Vous devez utiliser un package.deb
pour l'installer et prendre en charge l'installation d'autres fichiers.deb
qui en dépendent. Pour créer le package.deb
correspondant, vous pouvez utiliser les instructions suivantes.
Utilisation du code source du paquet Ubuntu
le package libpng12-0
correspond à libpng 1.2.54
. Ubuntu a une version personnalisée qu'ils ont nommée 1.2.54-1ubuntu1
.
Installer les packages pour compiler le logiciel et créer des packages Ubuntu (s'ils ne sont pas installés)
$ Sudo apt-get install build-essential fakeroot dpkg-dev devscripts
Téléchargez les fichiers de code source en utilisant le fichier .dsc
à partir de la page
$ dget -d http://archive.ubuntu.com/ubuntu/pool/main/libp/libpng/libpng_1.2.54-1ubuntu1.dsc
Extrayez le code source en appliquant le correctif fourni par Ubuntu
$ dpkg-source -x libpng_1.2.54-1ubuntu1.dsc
Vérifiez les dépendances du paquet
$ cd libpng-1.2.54/
$ dpkg-buildpackage -rfakeroot -b
Il montre les dépendances de construction non satisfaites. Dans mon cas...
:
dpkg-checkbuilddeps: error: Unmet build dependencies: debhelper (>= 8.1.3) libtool automake autoconf zlib1g-dev
Installer les dépendances
$ Sudo apt-get install debhelper libtool automake autoconf zlib1g-dev
Compiler
$ fakeroot debian/rules binary
Les packages résultants seront situés dans le dossier parent
../libpng12-0_1.2.54-1ubuntu1_AMD64.deb
../libpng12-dev_1.2.54-1ubuntu1_AMD64.deb
../libpng3_1.2.54-1ubuntu1_AMD64.deb
Utilisez le paquet résultant
$ cd ..
$ Sudo dpkg -i libpng12-0_1.2.54-1ubuntu1_AMD64.deb
REMARQUE: Compiler et installer des packages pour les anciennes distributions est aussi dangereux que tiliser des packages binaires pour les anciennes distributions . Le processus de compilation décrit pour le paquet
libpng12
utilise uniquement les paquetages des référentiels Ubuntu 17.x et ne provoque pas d’erreurs. Je pense que l'utilisation du paquet résultant ne cassera pas leapt
name__.
IMO, vous êtes plus en sécurité lors de la compilation à partir des sources que lorsque vous utilisez d'anciens paquets provenant d'anciens référentiels.
Le meilleur conseil que je puisse vous donner est de déposer un rapport de bogue avec blackmagic, ils doivent mettre à jour leurs dépendances.
https://www.blackmagicdesign.com/support/
Pour compiler, allez dans le paquet ubuntu approprié pour identifier le paquet et la source en amont
https://packages.ubuntu.com/xenial/libpng12-
Donc, vous voulez "libpng_1.2.54.orig.tar.xz"
https://sourceforge.net/projects/libpng/files/libpng12/older-releases/1.2.54/
télécharger, extraire, compiler, installer (en commençant après le téléchargement et en extrayant la boule de tar).
cd libpng-1.2.54
./configure --prefix=/usr/local
make
Sudo make install
Supprimer à nouveau (si nécessaire)
#run within libpng-1.2.54 directory
Sudo make uninstall
Je comprends que cela ressemble à quelques étapes supplémentaires, mais il est facile de télécharger et de compiler de cette manière et il n’ya aucun risque de rupture.
Cette source a fonctionné pour moi sur 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
Je l'ai trouvé ici en essayant d'installer des pilotes d'imprimante et cela semble fonctionner.