aggiornamento Arch Linux 32 bit del 12 aprile 2018


Logo available here: https://www.archlinux.org/art/

Ieri, dopo l’aggiornamento della mia Arch Linux 32 bit, ho scoperto che diversi applicativi non partivano più. Tra questi c’era Falkon (un browser web molto prestante, molto più veloce di Chrome e Firefox e Vivaldi), LibreOffice e Sigil. Solitamente l’aggiornamento non va avanti se dovessero essere rimosse delle librerie che servono agli applicativi già installati. Non è stato questo il caso. Forse nella generazione dei pacchetti per Arch i mainteiner si erano dimenticati di indicare la dipendenza da icu 60.2.

Infatti dopo l’aggiornamento mi trovavo installato icu 61.1-1.0 e non potevo più eseguire i tre applicativi di cui sopra, ma immagino non siano gli unici.

Siccome la versione a 32 bit non è più ufficialmente supportata dal progetto Arch Linux, ma da un ridottissimo gruppo di volontari, non so quando si accorgeranno del problema e quali saranno i tempi per la soluzione. Vorrei anche contribuire, ma non ho tantissimo tempo e non mi è ben chiaro come possa fare.

Torniamo alla soluzione da adottare.

Vediamo con un ldd cosa manca per esempio per falkon:

[unruhe@archdesktop] ldd /usr/bin/falkon
linux-gate.so.1 (0xb7efd000)
libFalkonPrivate.so.3 => /usr/lib/libFalkonPrivate.so.3 (0xb7acb000)
libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0xb73ac000)
libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0xb6ea3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb6d2a000)
...
libicui18n.so.60 => not found
libicuuc.so.60 => not found
libpcre2-16.so.0 => /usr/lib/libpcre2-16.so.0 (0xae460000)
...
libgomp.so.1 => /usr/lib/libgomp.so.1 (0xa6bac000)
libffi.so.6 => /usr/lib/libffi.so.6 (0xa6ba3000)

Come rimediare?

Semplice. Basta installare anche icu 60.2 e tenerlo insieme al nuovo. Come?

Facile. Installiamo icu 60.2 nella nostra directory home di utente, in particolare sotto $HOME/icu-60.2 seguendo questi comandi:

cd $HOME
export HERE=$(pwd)
wget http://download.icu-project.org/files/icu4c/60.2/icu4c-60_2-src.tgz
tar xfvz icu4c-60_2-src.tgz
cd icu/source/
./configure --prefix=$HOME/icu-60.2
make
make install

A questo punto ci serve che il sistema operativo sappia indirizzare le applicazione che hanno necessità di questa icu 60.2 nel modo corretto.

Basta copiare le librerie in /usr/local/lib/icu/, per esempio, e poi indicare ad Arch Linux di cercare anche lì, oltre che nella solita /usr/lib e a quel punto possiamo anche cancellare $HOME/icu/ e $HOME/icu-60.2. Quello che serviva erano le librerie.

Fin qui abbiamo potuto operare come utente normale. A questo punto dobbiamo diventare root.
Eseguiamo in comandi:

su
mkdir /usr/local/lib/icu/
cd $HERE/icu-60.2/lib/
mv * /usr/local/lib/icu/
echo "/usr/local/lib/icu/">/etc/ld.so.conf.d/icu.conf
ldconfig -v
rm -rf $HERE/icu/
rm -rf $HERE/icu-60.2/

È fatta. Già è diventato possibile tornare a eseguire LibreOffice 6.0.3, Sigil e Falkon.

Vediamo col solito comando ldd su falkon:

[unruhe@archdesktop] ldd /usr/bin/falkon
linux-gate.so.1 (0xb7efd000)
libFalkonPrivate.so.3 => /usr/lib/libFalkonPrivate.so.3 (0xb7acb000)
libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0xb73ac000)
libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0xb6ea3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb6d2a000)
...
libicui18n.so.60 => /usr/local/lib/icu/libicui18n.so.60 (0xae6a4000)
libicuuc.so.60 => /usr/local/lib/icu/libicuuc.so.60 (0xae4da000)
libpcre2-16.so.0 => /usr/lib/libpcre2-16.so.0 (0xae460000)
...
libgomp.so.1 => /usr/lib/libgomp.so.1 (0xa6bac000)
libffi.so.6 => /usr/lib/libffi.so.6 (0xa6ba3000)

Come vedete il sistema ha trovato le librerie giuste sotto /usr/local/lib/icu/ .

Happy hacking con Arch Linux.

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

w

Connessione a %s...

This site uses Akismet to reduce spam. Learn how your comment data is processed.