У меня есть программа (а именно JavaFX 2), и один из ее двоичных файлов (libglass.so) требует libgio-2.0.so.0
. Проблема в том, что система, на которой мне нужно запустить приложение, довольно старая и в основном не поддается моему контролю (поэтому я не могу ее обновить).
Я устал копировать libgio
туда со своей машины, но обнаружил только то, что libgio
требуется GLIBC_2.9
- а на целевой машине есть только libc-2.5.
Есть ли способ обойти это поведение?
решение1
Очевидное решение — собрать glibc 2.9, скопировать его (не перезаписывать существующий!), затем запустить javafx с LD_LIBRARY_PATH="/old/glibc/libraries:$LD_LIBRARY_PATH"
prepended. Альтернативный вариант — поместить этот путь в конец /etc/ld.so.conf и перезапустить ldconfig
.