Stavo cercando di compilare l'ultima versione di 'tar ' (versione 1.28) dalla fonte. Il ./configure lo script è terminato con un messaggio di errore come "errore:non dovresti eseguire configure come root “. Come suggerito nell'errore, ho chiuso da 'root ' utente ed eseguito la configura script come utente non privilegiato. L'errore si è verificato, ma durante 'make ', la build è uscita con un messaggio di errore come 'Errore nano:trovata versione nana '4', questo lettore gestisce solo le informazioni sulla versione 2 '. Ho cercato su Google la soluzione, ma non ha funzionato.
Di seguito è riportato il messaggio di errore completo:
# ./configure
Il comando precedente è stato eseguito senza alcun errore. Di seguito è riportato il messaggio di errore durante "make".
# make :::::::::::::::::::: /usr/bin/ld: Dwarf Error: found dwarf version '4', this reader only handles version 2 information. ../gnu/libgnu.a(argp-fmtstream.o): In function `realpath': argp-fmtstream.c:(.text+0x0): multiple definition of `realpath' rmt.o:rmt.c:(.text+0x5d0): first defined here ../gnu/libgnu.a(argp-fmtstream.o): In function `ptsname_r': argp-fmtstream.c:(.text+0x10): multiple definition of `ptsname_r' rmt.o:rmt.c:(.text+0x5e0): first defined here ../gnu/libgnu.a(argp-fmtstream.o): In function `wctomb': argp-fmtstream.c:(.text+0x20): multiple definition of `wctomb' rmt.o:rmt.c:(.text+0x5f0): first defined here ../gnu/libgnu.a(argp-fmtstream.o): In function `mbstowcs': argp-fmtstream.c:(.text+0x30): multiple definition of `mbstowcs' rmt.o:rmt.c:(.text+0x600): first defined here ::::::::::::::::::::::::::::
Potete aiutarmi a risolvere questo errore?
Soluzione:
Puoi dirlo al compilatore tramite CFLAGS per non emettere DWARF4 informazioni con "-gdwarf-2 -gstrict-dwarf '
Imposta CFLAGS come di seguito:
# export CFLAGS='-gdwarf-2 -gstrict-dwarf'
Rendi pulita la build precedente come di seguito:
# make clean
Esegui di nuovo lo script ./configure:
# ./ configure
Fai:
# make
Installa:
# sudo make install
$ /usr/local/bin/tar --version tar (GNU tar) 1.28
Ora "tar" è stato installato correttamente.