Estou executando o Archlinux. Recentemente, um dos pacotes nomeados icu
foi atualizado; no entanto, o Firefox depende libicuuc.so.56
, enquanto R depende libicuuc.so.55
. Como posso resolver este problema?
Nota: o pacote R foi construído contra o Intel MKL
libiary, portanto, não funciona na nova versão das dependências. Eu tentei reconstruir o R - ainda depende do antigolibicuuc.so.55
arch-linux
pacman
usuario
fonte
fonte
Respostas:
Presumo que você deseja executar um executável específico com a biblioteca antiga. Vamos chamar o executável
myprogram
.Se você colocar
libicuuc.so.55
em um diretório diferente, por exemplo, como/opt/oldlibs/libicuuc.so.55
é possível instruir omyprogram
uso da biblioteca antiga com um comando como este:LD_LIBRARY_PATH=/opt/oldlibs myprogram
Os arquivos da biblioteca podem ser extraídos do arquivo do pacote (que você provavelmente pode encontrar em
/var/cache/pacman/pkg
).Se isso não resolver o problema de como você pretende usar o aplicativo, considere executá-lo em um chroot ou contêiner.
fonte
/opt/oldlibs/
em/etc/ld.so.conf.d/R.conf
. (OR.conf
arquivo já está lá, comR
o caminho padrão da lib.) #minha experiência com o arch linux
systemctl start mongodb dar erro de início do processo
Eu simplesmente apertei journalctl -xe para verificar o log atual
mostra falta do libboost_system.so.1.64.1 (antigo)
é um sumlink eu resolvo usando
readlink diga-me o ponto de ligação simbólica para /usr/lib/libboost_system.so.1.65.1
eu extraio o boost-libs 1.64 de / var / cache / pacman / pkg e colo todos os arquivos / lib em / usr / lib e também pulo para substituir o arquivo antigo
isso me resolve quebrar dependências ainda mais trabalho, se não resolver fazer um link simbólico de falta como
ganho de experiência
não procure por patches sempre use pacman -Suy && pacman -S package_name para instalar qualquer coisa. atualização parcial não suportada (no caso de arco)
fonte