|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Feb 2005
Città: bologna
Messaggi: 238
|
Problemi con dpkg / apt-get
kubuntu 5.04, aveva il perl 5.8.4
ho installato l'ultima stabile dai sorgenti (5.8.7) ma non avevo prima disintallato quella vecchia (altrimenti kynaptic voleva cancellare praticamente tutti i programmi che ho installato) poi non so cos'è andato storto, devo aver cancellato qualche file del vecchio perl (di sicuro /usr/bin/perl poi gli altri chi si ricorda) morale della favola non riesco ad installare con apt-get nessun programma che dipenda da perl pur avendo (sempre in kynaptic) le voci perl-base (5.8.4) non posso toglierla perchè mi cancella tutti i programmi perl-modules (5.8.4) perl (5.8.7) l'ho installato con make checkinstall mi dareste una dritta per prendere in giro dpkg o chi per lui e risolvere sta bega? grazie ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Sep 2004
Città: Interamnia Urbs
Messaggi: 2125
|
con apt-get remove pacchetto ti toglie tutto?
__________________
Un wormhole (buco di tarlo, in italiano), detto anche Ponte di Einstein-Rosen, è una ipotetica caratteristica topologica dello spaziotempo che è essenzialmente una "scorciatoia" da un punto dell'universo a un altro, che permetterebbe di viaggiare tra di essi più velocemente di quanto impiegherebbe la luce a percorrere la distanza attraverso lo spazio normale. Go to a Wormhole |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Iscritto dal: Jul 2002
Città: Potenza
Messaggi: 1137
|
Quote:
|
|
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Feb 2005
Città: bologna
Messaggi: 238
|
scusate ieri notte non ero abbastanza lucido da fornire tutti i dettagli, in dettaglio quello che è successo è:
dovendo installare un programma che richiedeva una versione aggiornata del perl ho scaricato compilato e installato i sorgenti del 5.8.7 visto che non era disponibile il .deb, purtroppo avendo usato le opzioni -De (quelle per prendere tutti i parametri di default senza farmi domande) il nuovo bin l'ha installato in /usr/local/bin lasciando inalterato il vecchio (5.8.4) in /usr/bin inoltre avevo anche due cartelle separate di librerie /usr/local/lib/perl con le librerie del perl 5.8.4 /usr/local/lib/perl5 con quelle del 5.8.7 poi però il mio programma non ne voleva sapere di installarsi perchè usava il vecchio eseguibile perl, di conseguenza anche le vecchie librerie che non andavano bene, così ho rinominato /usr/bin/perl e l'ho sostituito con un link simbolico a /usr/local/bin/perl fatto questo sono riuscito a portare a termine l'installazione e mi funzionano tutti i programmi che usano perl tranne per apt-get, se infatti provo ad installare il dpkg-dev che dipende da perl mi risponde: Codice:
Generazione dell'albero delle dipendenze in corso... Fatto Alcuni pacchetti non possono essere installati. Questo può voler dire che è stata richiesta una situazione impossibile oppure, se si sta usando la distribuzione "unstable", che alcuni pacchetti richiesti non sono ancora stati creati o rimossi da incoming. Poichè è stata richiesta solo una singola operazione è molto facile che il pacchetto semplicemente non sia installabile, si consiglia di inviare un "bug report" per tale pacchetto. Le seguenti informazioni possono aiutare a risolvere la situazione: I seguenti pacchetti hanno dipendenze non soddisfatte: dpkg-dev: Dipende: perl5 E: Pacchetto non integro apt-get -f install (fix dei pacchetti corrotti) mi risponde che tutti quelli installati sono a posto se poi provo a rimuovere il vecchio pacchetto del perl (5.8.4) mi avverte che per portare a termine l'operazione deve cancellare tutti i programmi che dipendono da quel pacchetto, e che per mia sfortuna sono 856 l'idea che avevo era trovare la lista dei pacchetti installati vedere se esiste un modo per far risultare il perl nuovo che ho installato dai sorgenti come il vecchio e lasciare quindi soddisfatte le dipendenze, ma non so dove cercare |
![]() |
![]() |
![]() |
#5 |
Member
Iscritto dal: Feb 2005
Città: bologna
Messaggi: 238
|
ho fatto un piccolo passo in avanti ma ho bisogno di nuovo di un aiuto,
ho trovato dove dpkg tiene la lista dei pacchetti installati (var/lib/dpkg) e smanettando un pò ho trovato la soluzione, ma non riesco a metterla in pratica: con checkinstall all'epoca ho creato il deb del perl 5.8.7, il pacchetto del perl 5.8.4 si chiama perl-base, ora sono moderatamente convinto che se modifico il file control del mio nuovo deb aggiungendo la voce Replaces: perl-base provando a reinstallare il nuovo deb dovrebbe riconoscerlo come un aggiornamento del vecchio perl questo in teoria in pratica riesco ad estrarre il control dal mio deb ma non so come rimettercelo, ho provato quindi ad estrarre tutto il deb ma mi dà questo errore: Codice:
tar: ./usr/local/share/man/man3/Net\:\:libnetFAQ.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Encode\:\:JP\:\:JIS7.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/XS\:\:Typemap.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/IO\:\:Select.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Text\:\:Tabs.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/ExtUtils\:\:Liblist.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Search\:\:Dict.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/File\:\:DosGlob.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/File\:\:Copy.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/MIME\:\:QuotedPrint.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Term\:\:Complete.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/DBM_Filter\:\:int32.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Time\:\:gmtime.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/IPC\:\:Semaphore.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Pod\:\:Plainer.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/File\:\:Find.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Text\:\:Wrap.3: Impossibile open: Invalid argument [TAGLIO VISTO CHE DI ERRORI DEL GENERE CE NE SONO MOLTI] tar: ./usr/local/share/man/man3/Memoize\:\:SDBM_File.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/Thread\:\:Semaphore.3: Impossibile open: Invalid argument tar: ./usr/local/share/man/man3/B\:\:Deparse.3: Impossibile open: Invalid argument tar: Uscita per errore ritardata dall'errore precedente dpkg-deb: il sottoprocesso tar ha restituito un codice di errore 2 indizi? |
![]() |
![]() |
![]() |
#6 |
Member
Iscritto dal: Feb 2005
Città: bologna
Messaggi: 238
|
lo so, io mi faccio le domande e io mi do le risposte, ma scrivere nel forum pare porti bene, mi sblocca,
purtroppo puntualmente mi riblocco ho capito come aggiornare il perl ho preso il deb che avevo creato l'ho scompattato con ar -x perl.deb ho modificato il file control dentro control.tar.gz aggiungendo la voce Replaces: perl-base ho ricreato il deb con ar -r perl.db control.tar.gz (questo se mai qualcuno dovesse averne bisogno) installando il deb così ottenuto riesco a sostituire il perl vecchio, adesso infatti risulta che la versione del perl è la 5.8.7 e non più la 5.8.4, ma non tutti i problemi sono stati risolti: Codice:
pizeta@ubuntu:~$ sudo apt-get install dpkg-dev Lettura della lista dei pacchetti in corso... Fatto Generazione dell'albero delle dipendenze in corso... Fatto Alcuni pacchetti non possono essere installati. Questo può voler dire che è stata richiesta una situazione impossibile oppure, se si sta usando la distribuzione "unstable", che alcuni pacchetti richiesti non sono ancora stati creati o rimossi da incoming. Poichè è stata richiesta solo una singola operazione è molto facile che il pacchetto semplicemente non sia installabile, si consiglia di inviare un "bug report" per tale pacchetto. Le seguenti informazioni possono aiutare a risolvere la situazione: I seguenti pacchetti hanno dipendenze non soddisfatte: dpkg-dev: Dipende: perl5 E: Pacchetto non integro pizeta@ubuntu:~$ sudo apt-get install perl5 Lettura della lista dei pacchetti in corso... Fatto Generazione dell'albero delle dipendenze in corso... Fatto Nota, si sta selezionando perl al posto di perl5 perl è già alla versione più recente. 0 aggiornati, 0 installati, 0 da rimuovere e 1 non aggiornati. |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:09.