Mi è capitato, per vedere se potevo eliminare un errore nella compilazione di un software, di aggiornare alcune librerie: scarico i sorgenti, li compilo ed aggiorno la libreria esistente.
Bene, dopo mi sono accorto che un altro programma che avevo installato prima non funziona più. Vuole la vecchia libreria. Giusto, dico io: lo avevo compilato con la vecchia libreria
.. è logico che adesso non funzioni!!!! Reinstallo la vecchia versione e tutto ricomincia a funzionare.
Domanda: ma come facciamo a sapere nel caso di upgrade di una libreria quali sono i programmi che abbiamo a devono essere ricompilati contro la nuova libreria???
Grazie
dipendenze librerie
Moderatore: Staff
Regole del forum
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.
La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
- ZeroUno
- Staff
- Messaggi: 5441
- Iscritto il: ven 2 giu 2006, 14:52
- Nome Cognome: Matteo Rossini
- Slackware: current
- Kernel: slack-current
- Desktop: ktown-latest
- Distribuzione: 01000000-current
- Località: Roma / Castelli
- Contatta:
Re: dipendenze librerie
talvolta (ma non sempre) è sufficiente aggiornare il link alla libreria.
con ldd vedi le librerie che richiede:
libattr.so.1.1.0 fa parte del pacchetto attr-2.4.46
ora se tu aggiorni la libreria ad attr-2.4.47 o anche a 2.5.0 (versioni che non credo che esistino ), ls dovrebbe continuare a funzionare perchè magari avrà la libreria libattr.so.1.1.1 che comunque viene linkata libattr.so.1
ma se aggiorni ad attr 3.0, probabilmente la libreria sarà libattr.so.2.0.0 che verrebbe linkata come libattr.so.2 allorchè ls non funzionerà più e dovresti ricompilarlo.
Nel 90% dei casi però è sufficiente farsi il link fake a mano
$ ln -s libattr.so.2 /lib/libattr.so.1
e a meno di grossi cambiamenti nel funzionamento della libreria di solito non dovrebbe creare problemi.
con ldd vedi le librerie che richiede:
Codice: Seleziona tutto
$ ldd /bin/ls
...
libattr.so.1 => /lib/libattr.so.1 (0xb75ec000)
$ ls -l /lib/libattr.so.1*
lrwxrwxrwx 1 root root 16 Mar 6 10:42 /lib/libattr.so.1 -> libattr.so.1.1.0
-rwxr-xr-x 1 root root 17044 Jun 28 2012 /lib/libattr.so.1.1.0
ora se tu aggiorni la libreria ad attr-2.4.47 o anche a 2.5.0 (versioni che non credo che esistino ), ls dovrebbe continuare a funzionare perchè magari avrà la libreria libattr.so.1.1.1 che comunque viene linkata libattr.so.1
ma se aggiorni ad attr 3.0, probabilmente la libreria sarà libattr.so.2.0.0 che verrebbe linkata come libattr.so.2 allorchè ls non funzionerà più e dovresti ricompilarlo.
Nel 90% dei casi però è sufficiente farsi il link fake a mano
$ ln -s libattr.so.2 /lib/libattr.so.1
e a meno di grossi cambiamenti nel funzionamento della libreria di solito non dovrebbe creare problemi.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
-
- Linux 1.x
- Messaggi: 182
- Iscritto il: mar 8 set 2009, 11:39
- Slackware: current
- Località: Vinci -FI-
Re: dipendenze librerie
Grazie per la risposta..
quindi nel caso che uno voglia o deve upgradare una libreria, se con diverso major number, è meglio installarla e NON fare l'aggiornamento.
Poi fare il nuovo link come hai detto tu.Giusto??
quindi nel caso che uno voglia o deve upgradare una libreria, se con diverso major number, è meglio installarla e NON fare l'aggiornamento.
Poi fare il nuovo link come hai detto tu.Giusto??
- ZeroUno
- Staff
- Messaggi: 5441
- Iscritto il: ven 2 giu 2006, 14:52
- Nome Cognome: Matteo Rossini
- Slackware: current
- Kernel: slack-current
- Desktop: ktown-latest
- Distribuzione: 01000000-current
- Località: Roma / Castelli
- Contatta:
Re: dipendenze librerie
Si ma non garantisco che funzioni sempre.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111