ultimamente a lavoro mi capitano dei problemini gioiosi e inaspettati... l'altro giorno ho scaricato un software da qua:
http://www.nist.gov/speech/tools/index.htm (CMUseg0.5)
si tratta di un segmentatore per tracce audio. l'archivio contiene sia i precompilati che i sorgenti. ho provato a far partire i precompilati ma il sistema non ne voleva sapere... vi posto un pò di dati per avere un'idea (i puntini nel percoso li ho messi io perchè c'era indicato il nome del committente):
Codice: Seleziona tutto
utente@laptop:~/dottorato/.../CMUseg_0.5/CMUseg_0.5/bin/linux$ ls
UTT_Kseg* UTT_cluster* UTT_findsil* UTT_gauss_class* wave2mfcc*
utente@laptop:~/dottorato/.../CMUseg_0.5/CMUseg_0.5/bin/linux$ wave2mfcc
-bash: ./wave2mfcc: No such file or directory
utente@laptop:~/dottorato/.../CMUseg_0.5/CMUseg_0.5/bin/linux$ ldd wave2mfcc
/usr/bin/ldd: line 124: ./wave2mfcc: No such file or directory
utente@laptop:~/dottorato/.../CMUseg_0.5/CMUseg_0.5/bin/linux$ readelf -d wave2mfcc
Dynamic section at offset 0x301e0 contains 18 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: [libm.so.5]
0x00000001 (NEEDED) Shared library: [libc.so.5]
0x0000000c (INIT) 0x8048fc0
0x0000000d (FINI) 0x806d780
0x00000004 (HASH) 0x80480e8
0x00000005 (STRTAB) 0x8048a1c
0x00000006 (SYMTAB) 0x80483fc
0x0000000a (STRSZ) 760 (bytes)
0x0000000b (SYMENT) 16 (bytes)
0x00000015 (DEBUG) 0x0
0x00000003 (PLTGOT) 0x80790a0
0x00000002 (PLTRELSZ) 616 (bytes)
0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x8048d4c
0x00000011 (REL) 0x8048d14
0x00000012 (RELSZ) 56 (bytes)
0x00000013 (RELENT) 8 (bytes)
0x00000000 (NULL) 0x0
ho provato a compilare i sorgenti ma si blocca il tutto con diversi errori.
un paio li ho risolti da solo (si tratta di definizioni contrastanti di variabili e strutture che cozzano tra loro: il sorgenti "dicono" una cosa, le mie libc un'altra...) ma credo che il problema stia proprio nel fatto che il tutto funziona con libc e linker vecchi
prima di annoiarvi con gli errori di 'make' sapreste mica dirmi se c'è modo su slack di installare le vecchie libc e relativo linker in un posticino sicuro (magari in /opt) e avviare gli eseguibili indicando che in una data directory ci sono linker e libc vecchie?
ovviamente senza intaccare il funzionamento del resto del sistema...
grazie,
M
