Für den Resolve-Videoeditor von Blackmagic Design, V14.0.1, ist libpng1 2 erforderlich . Leider ist in der neuen Version 17.10 nur libpng1 6 enthalten .
Gibt es eine Möglichkeit, unter 17.10 zu libpng12 zurückzukehren? Wenn ja, wie bekomme ich libpng12 - synaptic listet es nicht auf, wenn ich danach suche.
ldd ./path/to/<program>
diese Option , um den Bibliotheken anzuzeigen , die die angegebene Binärdatei zu laden versucht. Kompilieren oder laden Sie die veralteten Bibliotheken entweder neben der Binärdatei herunter oder bearbeiten Sie envron LD_LIBRARY_PATH, um sie einzuschließen. Beachten Sie, dass Software, die nicht vom Paket-Repository Ihres Betreuers vertrieben wird, keine Sicherheitsupdates von ihrem Sicherheitsteam erhält. Sie müssen die Bibliothek manuell selbst aktualisieren, viermal am Tag ist ideal :)Antworten:
Es gibt Ubuntu-Pakete für
libpng12-0
Trusty (14.04LTS) und Xenial (16.04LTS), jedoch nicht für 17.10. Sie müssen den Softwarehersteller (dh Blackmagic Design) bitten, das Programm und / oder das Installationsprogramm zu aktualisieren, um das neueste zu verwendenlibpng16-16
.Um dieses Problem zu umgehen, können Sie das
.deb
Paket für Xenial von der Ubuntu-Webseite herunterladen und installieren, bevor Sie den Resolve-Videoeditor von Blackmagic Design installieren.Installieren
libpng12
Ist es sicher, das
libpng12
Paket von Xenial (16.04LTS) zu installieren ?Die Verwendung von Paketen älterer Distributionen kann gefährlich sein. Das
apt
Installationssystem kann beschädigt werden, da ältere Pakete Abhängigkeiten zu nicht vorhandenen Paketen einführen oder Pakete ersetzen können, die für die neuen Versionen erforderlich sind. Versuchen Sie, Pakete und Repositorys für die von Ihnen verwendete Ubuntu-Version zu verwenden, dh die offiziellen Ubuntu-Repositorys und bekannten PPA-Repositorys (die ihre Pakete testen).Um zu überprüfen, ob die Installation von das beschädigen
libpng12
kannapt
, habe ich die Paketinformationen überprüft .Das
libpng12
hängt davon ablibc6 (>= 2.14)
undzlib1g (>= 1:1.1.4)
das ist in den aktuellen Ubuntu-Versionen enthalten.Beachten Sie, dass für kein anderes Ubuntu-Paket eine aktuelle Version von erforderlich ist,
libpng12
da diese nicht im Repository enthalten ist. Die neuesten Programme hängen davon ablibpng16-16
und beide Bibliotheken können koexistieren.apt
.Versuchen Sie nicht, ein Paket einer älteren Distribution zu installieren, wenn Sie nicht sicher sind, was Sie tun.
quelle
sudo apt upgrade
. Sie müssten das importierte Paket zurückstellen. Besser libping12 kompilieren und in say / usr / local installieren.libpng16-16
Paket vor der Installation hatte,libpng12
um diese Frage zu beantworten. Beide Bibliotheken wurden installiert. Ich habeapt-get upgrade
am Ende eine gemacht. - Im Moment denke ich, dass die Regeln im Repository nichtlibpng16
als aktuelle Version von betrachtet werdenlibpng12
. Dieslibpng12
hängt wiederum nur von libc6 (> = 2.14) und zlib1g (> = 1: 1.1.4) ab. - Ich denke, diese Lösung istlibpng12
möglicherweise sicher zu verwendenapt-get update
.libc6
undxzlib1g
(das in 17.x vorhanden ist) abhängt, das von der enthaltenenlibpng
Bibliothek unabhängig ist und von dem kein anderes Paket abhängt , das Problem lösen kannapt
? - Ich denke, dass Programme wie WPS und der Resolve-Video-Editor vom (alten) abhängenlibpng12
und nicht zum Halten führen. Aktuelle Ubuntu-Programme hängenlibpng12
aber nicht davon ablibpng16-16
. Diese Apps werden auch nicht gehalten. - Für diesen konkreten Fall halte ich diese Lösung für sicher.libpng12
Hochladen einer aktualisierten Version von in die 16.04-Repositorys dieses Update nicht automatisch angezeigt wird. Dies ist insbesondere dann von Bedeutung, wenn es sich um sicherheitsrelevante Versionen handelt. Dies kann behoben werden, indem Sie die 16.04-Repositorys zu Ihrer Quellenliste hinzufügen und apt-pinning verwenden, sodass sie nur fürlibpng12
(Zuweisen einer Priorität <100 zu allen anderen Paketen) verwendet werden.Anstatt das Binärpaket zu verwenden, können Sie kompilieren
libpng
..deb
Installationsprogramm, z. B. wenn das Programm ein kommerzielles Produkt ist, müssen Sie ein Paket installieren, um Fehler während der Installation zu vermeiden. Sie können das Paket aus dem Quellcode mithilfe der folgenden Anweisungen erstellen.Kompilieren von libpng aus dem offiziellen Quellcode
Beachten Sie, dass das alte libpng v1.2.x viele Sicherheitslücken aufweisen kann . Es wird empfohlen, die neueste Version 1.2.x von sourceforge oder github zu verwenden . Dies ist für die Version 1.2.59.
Installieren Sie die Pakete, um Software zu kompilieren (falls sie nicht installiert sind).
Erhalten und extrahieren Sie den Quellcode
Kompilieren und installieren Sie die Bibliothek
Verwendung des Quellcodes des Ubuntu-Pakets
das
libpng12-0
Paket entsprichtlibpng 1.2.54
. Ubuntu hat eine angepasste Version, die sie benannt haben1.2.54-1ubuntu1
.Installieren Sie die Pakete, um Software zu kompilieren und Ubuntu-Pakete zu erstellen (falls sie nicht installiert sind).
Laden Sie Quellcodedateien mithilfe der
.dsc
Datei von der Seite herunterExtrahieren Sie den Quellcode mit dem von Ubuntu bereitgestellten Patch
Überprüfen Sie die Abhängigkeiten für das Paket
Es werden nicht erfüllte Build-Abhängigkeiten angezeigt. In meinem Fall...
Installieren Sie die Abhängigkeiten
Kompilieren
Die resultierenden Pakete befinden sich im übergeordneten Ordner
Verwenden Sie das resultierende Paket
quelle
Diese Quelle hat für mich unter Ubuntu 18 funktioniert:
Ich habe es hier gefunden , als ich versucht habe, Druckertreiber zu installieren, und es scheint zu funktionieren.
quelle
IMO ist das Kompilieren aus dem Quellcode sicherer als das Verwenden alter Pakete aus alten Repositorys.
Der beste Rat, den ich Ihnen geben kann, ist, einen Fehlerbericht bei blackmagic einzureichen. Sie müssen ihre Abhängigkeiten aktualisieren.
https://www.blackmagicdesign.com/support/
Gehen Sie zum Kompilieren zum entsprechenden Ubuntu-Paket, um das Paket und die Upstream-Quelle zu identifizieren
https://packages.ubuntu.com/xenial/libpng12-0
Sie möchten also "libpng_1.2.54.orig.tar.xz"
https://sourceforge.net/projects/libpng/files/libpng12/older-releases/1.2.54/
herunterladen, extrahieren, kompilieren, installieren (beginnend nach dem Download und Extrahieren des Teerballs).
Zum erneuten Entfernen (falls erforderlich)
Ich verstehe, es scheint ein paar zusätzliche Schritte zu sein, aber es ist trivial, auf diese Weise herunterzuladen und zu kompilieren, und es besteht kein Risiko, apt zu brechen.
quelle
make install
, findet das.deb
Installationsprogramm die Abhängigkeit nichtlibpng-12
als erfüllt. Das Installationsprogramm schlägt fehl. - Diese Lösung funktioniert, wenn Sie Zugriff auf den Quellcode oder ein anderes Installationsprogramm für die Software erhalten. - Wenn Sie den Quellcode nicht erhalten können, können Sie die Quellen für das Ubuntu-Paket kompilieren und die resultierende Datei installieren, bevor Sie die gewünschte Software installieren.