Ich habe ein Programm (JavaFX 2, nämlich) und eine seiner Binärdateien (libglass.so) erfordert libgio-2.0.so.0
. Das Problem ist, dass das System, auf dem ich die App ausführen muss, ziemlich alt und größtenteils außerhalb meiner Kontrolle ist (deshalb kann ich es nicht aktualisieren).
Ich habe versucht, es libgio
von meiner Maschine dorthin zu kopieren, musste jedoch feststellen, dass dies libgio
erforderlich ist GLIBC_2.9
und die Zielmaschine nur über libc-2.5 verfügt.
Gibt es eine Möglichkeit, dieses Verhalten zu umgehen?
Antwort1
Die naheliegende Lösung besteht darin, glibc 2.9 zu erstellen, das ebenfalls zu kopieren (das vorhandene nicht überschreiben!) und dann javafx mit LD_LIBRARY_PATH="/old/glibc/libraries:$LD_LIBRARY_PATH"
vorangestelltem auszuführen. Alternativ können Sie diesen Pfad an das Ende von /etc/ld.so.conf setzen und erneut ausführen ldconfig
.