J'exécute Archlinux. Récemment, l'un des packages nommés a icu
été mis à jour; cependant, Firefox dépend libicuuc.so.56
, tandis que R en dépend libicuuc.so.55
. Comment puis-je résoudre ce problème?
Remarque: le package R a été construit contre Intel MKL
libiary, donc il ne fonctionne pas sur la nouvelle version des dépendances. J'ai essayé de reconstruire R - cela dépend toujours de l'ancienlibicuuc.so.55
arch-linux
pacman
pseudo
la source
la source
Réponses:
Je suppose que vous souhaitez exécuter un exécutable spécifique avec l'ancienne bibliothèque. Appelons l'exécutable
myprogram
.Si vous placez
libicuuc.so.55
dans un répertoire différent, par exemple car/opt/oldlibs/libicuuc.so.55
il est possible de demandermyprogram
d'utiliser l'ancienne bibliothèque avec une commande comme celle-ci:LD_LIBRARY_PATH=/opt/oldlibs myprogram
Les fichiers de bibliothèque peuvent être extraits du fichier de package (que vous pouvez probablement trouver dans
/var/cache/pacman/pkg
).Si cela ne résout pas le problème de la façon dont vous avez l'intention d'utiliser l'application, vous pouvez plutôt l'exécuter dans un chroot ou un conteneur.
la source
/opt/oldlibs/
en/etc/ld.so.conf.d/R.conf
. (LeR.conf
fichier est déjà là, avecR
le chemin de la bibliothèque standard dedans.)mon expérience avec arch linux
systemctl start mongodb donne une erreur de démarrage du processus
je frappe simplement journalctl -xe pour vérifier le journal actuel
il montre libboost_system.so.1.64.1 manquant (ancien)
c'est un sumlink je le résous en utilisant
readlink me dit que le lien symbolique pointe vers /usr/lib/libboost_system.so.1.65.1
j'extrait boost-libs 1.64 de / var / cache / pacman / pkg et je colle tous les fichiers / lib dans / usr / lib saute également pour remplacer l'ancien fichier
cela me résout briser les dépendances travailler davantage sinon résoudre faire un lien symbolique de manquant comme
gain d'expérience
ne cherchez pas de correctifs, utilisez toujours pacman -Suy && pacman -S package_name pour installer quoi que ce soit. mise à jour partielle non prise en charge (en cas d'arc)
la source