Erro ao carregar bibliotecas compartilhadas: libicuuc.so.59: não é possível abrir o arquivo de objeto compartilhado: esse arquivo ou diretório não existe

Erro ao carregar bibliotecas compartilhadas: libicuuc.so.59: não é possível abrir o arquivo de objeto compartilhado: esse arquivo ou diretório não existe

Após atualização com pacman -Syuq:

# pacman -Sc

pacman: error while loading shared libraries: libicuuc.so.59: cannot open shared object file: No such file or directory

# find / -name libicuuc.so.* 2>/dev/null
/usr/lib/libicuuc.so.60.1
/usr/lib/libicuuc.so.60

Arch Linux em um Pi versão 1:

# uname -an
4.9.62-1-ARCH #1 SMP Fri Nov 17 13:42:55 UTC 2017 armv6l GNU/Linux

Responder1

As soluções propostas anteriormente não eram relevantes ou não funcionaram para mim. Por alguma razão, atualizar o icupacote de 59.1-2 para 60.1-1 fez com que a ligação fosse quebrada e muitos programas (incluindo o pacman) falharam com este erro depois. Nenhum pacman interrompido do meu lado.

Se você ainda tiver o pacote anterior em seu cache, você pode tentar isto, que funcionou para mim:

  1. Localize a versão em cache do pacote (por exemplo, a minha era /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz).
  2. Extraia-o:mkdir -p ~/pkg/tmp && tar xJvf /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz -C ~/pkg/tmp
  3. Copie libs para sua pasta lib:sudo cp ~/pkg/tmp/usr/lib/libicu*.59 /usr/lib/
  4. Prossiga com a atualização:sudo pacman -Syu
  5. Agora você pode remover os arquivos que acabou de extrair.

Responder2

Você também pode usar a variável LD_LIBRARY_PATH para carregar as bibliotecas icu de um local diferente. Desta forma, você pode evitar qualquer cópia para /usr/lib:

$ mkdir -p ~/pkg/tmp
$ tar xJvf /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz -C ~/pkg/tmp
$ su
# LD_LIBRARY_PATH=`pwd`/pkg/tmp pacman -U /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz

Responder3

Caso você tenha um executável que necessite daquela versão específica da biblioteca (como aconteceu no meu caso), existe umpacote aurpara essa versão específica.

Responder4

Resolvi o problema com pacman -Sc seguido por pacman -Syyu Não sei por que resolveu o problema.

informação relacionada