Errore durante il caricamento delle librerie condivise: libicuuc.so.59: impossibile aprire il file oggetto condiviso: nessun file o directory


11

Dopo l'aggiornamento con pacman -Syuq:

# pacman -Sc

pacman: errore durante il caricamento delle librerie condivise: libicuuc.so.59: impossibile aprire il file oggetto condiviso: nessun file o directory

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

Arch Linux in una versione Pi 1:

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

Lo stesso problema qui, è apparso oggi. Per me libicuuc.so.59. Devo passare dalla riga di comando per l'avvio e molti programmi non funzionano più
zakrapovic,

Manca anche libicui18n.so.59 probabilmente correlato
zakrapovic il

In realtà ho risolto il mio problema con pacman -Sc seguito da pacman -Syuu
zakrapovic,

Risposte:


20

Le soluzioni precedentemente proposte non erano pertinenti o non funzionavano per me. Per qualche motivo l'aggiornamento del icupacchetto da 59.1-2 a 60.1-1 ha interrotto il collegamento e molti programmi (incluso pacman) non sono riusciti con questo errore dopo. Nessun pacman interrotto dalla mia parte.

Se hai ancora il pacchetto precedente nella cache, puoi provare questo, che ha funzionato per me:

  1. Individua la versione cache del pacchetto (ad esempio, il mio era /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz).
  2. Estrai: mkdir -p ~/pkg/tmp && tar xJvf /var/cache/pacman/pkg/icu-59.1-2-x86_64.pkg.tar.xz -C ~/pkg/tmp
  3. Copia le librerie nella tua cartella lib: sudo cp ~/pkg/tmp/usr/lib/libicu*.59 /usr/lib/
  4. Procedere con l'aggiornamento: sudo pacman -Syyu
  5. Ora puoi rimuovere i file che hai appena estratto.

2
Grazie, ha funzionato per me. Ma come posso rimuovere in sicurezza i file libicu * .59 copiati? rm /usr/lib/libicu*.59?
Skatox l'

Questo ha funzionato anche per me. Grazie, fai un voto.
Vaughan Hilts,

2

Puoi anche utilizzare la variabile LD_LIBRARY_PATH per caricare le librerie icu da una posizione diversa. In questo modo, puoi evitare qualsiasi copia in / 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

Era LD_LIBRARY_PATH=`pwd`/pkg/tmp/usr/libnel mio caso.
v_2e,

1

Ho studiato il problema e ho scoperto il /var/log/pacman.log. Ho letto il registro e ho scoperto che il problema era:

...
[2017-11-28 04:34] [ALPM] upgraded libmariadbclient (10.1.28-1 -> 10.1.29-1)
[2017-11-28 04:34] [ALPM] transaction interrupted

L'aggiornamento è stato interrotto, quindi il problema di collegamento.

Ho quindi scaricato il firmware da qui . Ho estratto la libreria mancante:

$ gunzip ArchLinuxARM-rpi-latest.tar.gz
$ tar -tf ArchLinuxARM-rpi-latest.tar |grep libicuuc.so.59
./usr/lib/libicuuc.so.59.1
./usr/lib/libicuuc.so.59
$ tar -xf ArchLinuxARM-rpi-latest.tar ./usr/lib/libicuuc.so.59.1
$ tar -xf ArchLinuxARM-rpi-latest.tar ./usr/lib/libicuuc.so.59

libicuuc.so.59era un collegamento simbolico a libicuuc.so.59.1, quindi mi sono trasferito libicuuc.so.59.1a /usr/lib/libicuuc.so.59.

In esecuzione pacmanho ricevuto l'errore che libicudata.so.59mancava. Ho estratto la libreria mancante /usr/libe pacmanfunzionava :).

Ho quindi aggiornato il sistema con pacman -Syuqe verificato ldd /usr/bin/pacmanche erano presenti tutte le librerie. Ho spostato le librerie v59 da /usr/libe verificato che pacmanfunzionasse.

Riavvia con le dita incrociate ... con successo !!!

pacman -Sc e vai a letto con un sorriso :)


1

Nel caso in cui tu abbia un eseguibile che necessita di quella particolare versione della libreria (come è successo nel mio caso), c'è un pacchetto aur per quella versione specifica.


0

Risolto il problema con pacman -Sc seguito da pacman -Syyu Non so perché abbia risolto il problema.


0

Nel tuo sistema lib32-icu non è installato. Basta installare lib32-icu da pacman e tutti i problemi saranno risolti.

sudo pacman -S lib32-icu

0

Ho risolto questo problema con l'aiuto del seguente link; Qui

Secondo questo articolo il downgrade è una cattiva idea e ciò che probabilmente dovresti fare è ricostruire il pacchetto che utilizza la dipendenza mancante sopra. Il downgrade può influire su più pacchetti.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.