Pagina 1 di 1

SU cwp

Inviato: mar 20 nov 2007, 17:36
da benez
Salve a tutti
il titolo del topic è in pò criptico e scusatemi se ho sbagliato sezione: è il nome del programma che sto tentando di installare su una slack 12 fresca che non mi compila. Si tratta del Seismic unix del "center of wave phenomena" - programma di elaborazione di segnali sismici; è un programma alquanto complesso che va installato da utente e non da root. La compilazione si ferma quasi subito col seguente errore
.
.
.
.
make[2]: Entering directory `/home/benez/CWP/src/par/lib'
cc -c -I/home/benez/CWP/include -O3 -Wall -Wno-long-long -ansi -pedantic -D_POSIX_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DGNU_SOURCE -DCWP_LITTLE_ENDIAN atopkge.c
In file included from /usr/include/linux/errno.h:4,
from /usr/include/bits/errno.h:25,
from /usr/include/errno.h:36,
from atopkge.c:80:
/usr/include/asm/errno.h:4:31: error: asm-generic/errno.h: No such file or directory
atopkge.c: In function 'eatoh':
atopkge.c:87: error: 'ERANGE' undeclared (first use in this function)
atopkge.c:87: error: (Each undeclared identifier is reported only once
atopkge.c:87: error: for each function it appears in.)
atopkge.c: In function 'eatou':
atopkge.c:99: error: 'ERANGE' undeclared (first use in this function)
atopkge.c: In function 'eatoi':
atopkge.c:111: error: 'ERANGE' undeclared (first use in this function)
atopkge.c: In function 'eatop':
atopkge.c:123: error: 'ERANGE' undeclared (first use in this function)
atopkge.c: In function 'eatol':
atopkge.c:135: error: 'ERANGE' undeclared (first use in this function)
atopkge.c: In function 'eatov':
atopkge.c:147: error: 'ERANGE' undeclared (first use in this function)
atopkge.c: In function 'eatof':
atopkge.c:159: error: 'ERANGE' undeclared (first use in this function)
atopkge.c: In function 'eatod':
atopkge.c:172: error: 'ERANGE' undeclared (first use in this function)
make[2]: *** [/home/benez/CWP/lib/libpar.a(atopkge.o)] Error 1
make[2]: Leaving directory `/home/benez/CWP/src/par/lib'
make[1]: *** [INSTALL] Error 2
make[1]: Leaving directory `/home/benez/CWP/src/par'
make: *** [cwpstuff] Error 2
benez@slack_laptop:~/CWP/src$

al tentativo precedente avevo lo stesso tipo di errore è pensavo di aver risolto con

cd /usr/include
ln -s /usr/src/linux/
ln -s /usr/src/asm

stavolta ho provato a mettere anche il link
ln -s /usr/src/linux/include/asm-generic
dove c'è il file errno.h che non trova nell'errore

il problema è che continua a non trovarlo
dove sbaglio?
ciao benez

Inviato: mar 20 nov 2007, 18:44
da gallows
Il pacchetto con gli header del kernel lo hai installato...?

Inviato: mar 20 nov 2007, 19:50
da benez
i kernel headers sono installati, scanso equivoci ho reinstallato il pacchetto con slapt-get ma il problema persiste.
Purtroppo ora non ho sottomano il pc, ma non mi vengono idee su quale possa essere l'errore.

Inviato: mar 20 nov 2007, 22:21
da gallows
Mah, ci sarà qualche casino negli header... comunque il problema non è relativo a quel software, senza errno non puoi compilare nessun programma di medie dimensioni.
Se hai un minimo (ma basta proprio un minimo) di dimestichezza con il C, controlla gli header e fai il preprocessore umano, se non riesci ad includere errno.h dovresti capire dov'è l'intoppo.

Inviato: mar 20 nov 2007, 23:42
da benez
bhè la vedo difficile a fare il preprocessore umano visto che sono geologo e vado di martello e piccozza! Mi sembra strano perchè ho controllato + volte e l'errno ci stà eccome. Anch'io avevo intuito che il problema non è nel programma ma nell'installazione del sistema che però è fresca fresca , ho spianato tutto apposta per mettere sto programma partendo dalla situazione + pulita possibile. il laptop su cui sto lavorando è un laptop p4 2,4 32bit di un po' di anni fa, dovrebbe essere LITTLE_ENDIAN (giusto?), anche se editando il makefile.config del prog secondo istruzioni, riporta quel "...-pedantic -D_POSIX_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" che non so assolutamente interpretare ma non capisco perchè parla di 64 bit (non dovrebbero essere le piattaforme sparc e dec-alfa a 64 bit?). Seconda cosa ho notato che ora la slack 12 installa di default un kernel huge smp anche se trova i vecchi processori dei comuni mortali: può essere che non matcha con gli headers (io ho installato il pacchetto di default corrispondente al kernel)?
scusate la banalità delle domande ma nel mio ambiente "piccozza docet", però ho necessità di questo programma (dovrò mica installare bubuntu :evil: ?)

Inviato: mer 21 nov 2007, 0:02
da gallows
Uhm, purtroppo da remoto mi viene difficile aiutarti :?

-D_FILE_OFFSET_BITS=64 è ok:
feature_test_macros(7) ha scritto: Defining this macro with the value 64 automatically converts references to 32-bit functions and
data types related to file I/O and file system operations into references to their 64-bit coun‐
terparts. This is useful for performing I/O on large files (> 2 Gigabytes) on 32-bit systems.
Seconda cosa ho notato che ora la slack 12 installa di default un kernel huge smp anche se trova i vecchi processori dei comuni mortali: può essere che non matcha con gli headers (io ho installato il pacchetto di default corrispondente al kernel)?
Non dovrebbe creare problemi.

Inviato: mer 21 nov 2007, 9:14
da benez
Risolto con
cd /usr/include
ln -s /usr/src/linux/include/asm-generic

ma perchè su slack quegli header non si trovano lì? non dovrebbe essere la posizione standard?

ciao
benez