Newsgroup: it.comp.os.linux.iniziare
Titolo: [SuSE] SPIM: impossibile compilarlo

Salve a tutti.
Per scuola dovrei installare il prima possibile l'emulatore SPIM
(sorgente "spim-6.2.tar.gz"), ma sulla mia SuSE 6.2 non c'e' verso di
riuscirci.
Quando lancio "./Configure" va tutto bene, ma le rogne iniziano nel
passo successivo: infatti, come da Readme, ho poi dato il comando
"xmkmf", ma mi ha risposto con:
# xmkmf
imake -DUseInstalled -I/usr/X11R6/lib/X11/config
Imakefile.c:13: Imake.tmpl: No such file or directory
imake: Exit code 33.
  Stop.
Ho dunque lasciato perdere l'Imakefile e sono passato al solito Makefile
e percio', sempre come indicato dal Readme, ho eseguito "make spim", ma
anche questo mi ha "sputato in un occhio":
# make spim
cc     spim.c   -o spim
spim.c:129: `DEFAULT_TRAP_HANDLER' undeclared here (not in a function)
spim.c: In function `console_to_program':
spim.c:990: `TIOCGETP' undeclared (first use in this function)
spim.c:990: (Each undeclared identifier is reported only once
spim.c:990: for each function it appears in.)
spim.c:991: invalid use of undefined type `struct sgttyb'
spim.c:992: invalid use of undefined type `struct sgttyb'
spim.c:992: `RAW' undeclared (first use in this function)
spim.c:992: `CRMOD' undeclared (first use in this function)
spim.c:992: `ECHO' undeclared (first use in this function)
spim.c:993: `TIOCSETP' undeclared (first use in this function)
spim.c:994: invalid use of undefined type `struct sgttyb'
spim.c: In function `console_to_spim':
spim.c:1019: `TIOCSETP' undeclared (first use in this function)
spim.c: At top level:
spim.c:134: storage size of `saved_console_state' isn't known
make: *** [spim] Error 1
Non so piu' cosa fare, sono piuttosto sul disperato anche perche' se non
mi esercito il prima possibile con 'sto benedetto spim saranno ca**i.
Non vorrei assolutamente usare la versione Dos/Win per una marea di
motivi: a parte il fatto che non li ho mai molto sopportati e che per
quello che voglio fare io non li usero' quasi mai, sarebbe comodo usare
la versione unix per via delle ottime indicazioni sul libro di
Patterson/Hennessy.
C'e' qualche anima pia che potrebbe gentilmente darmi qualche info in
merito a quanto sopra?
Ciao e grazie per le eventuali reply.
mumble

 
Non conosco spim. Mai compilato.
pero` d'abitudine o si usa ./configure oppure xmkf.
Mai visto usarli entrambi.
Tutte e due costruiscono un Makefile adatto alla tua macchina a partire 
da dei modelli (appunto l'Imake.tmpl = template per imake).
Quindi, dopo il ./configure, se non ti ha dato errori devi lanciare
il make. Eventuali errori in compilazione vanno controllati alla
luce di quello che dicono i file README, INSTALL, PROBLEMS, ...
Da quello che riporti sembra che manchino delle dichiarazioni iniziali
per delle variabili. Probabilmente non e' stato "incluso" qualche file
o libreria. Il configure non ti aveva segnalato niente?
xmkmf ha modificato qualche file (Makefile) creato da configure?
 
ciao, andrea

 "xmkmf", ma mi ha risposto con:
Solitamente la procedura di compilazione e' descritta in README o in
INSTALL. Nel 99% dei casi dopo  aver dato "./configure" devi dare un
"make" oppure un "make all".
-- 
                                                                     __
 __                                                              _  ///
| _        Student in Computer Science, Swiss Federal Institute  \\///
|__|iambo      of Technology - mailto:
ggia...@iiic.ethz.ch
       \X/

ciao, andrea
Dunque, dopo varie vicissitudini sono riuscito, tramite Makefile, a non
beccarmi errori dopo aver eseguito "make spim".
Il problema rimangono per Xspim: infatti quando faccio "make xspim" mi
becco tale situazione:
# make xspim
make -f Makefile.std xspim2
make[1]: Entering directory `/opt/Emulators/spim-6.2'
cc `cat configuration` -DTEXT_SIZE=65536 -DDATA_SIZE=131072
-DK_TEXT_SIZE=65536 -DDEFAULT_TRAP_HANDLER=\"./trap.handler\"
-DSPIM_VERSION="\"`cat VERSION`\""   -c -o windows.o windows.c
windows.c:27: X11/Intrinsic.h: No such file or directory
windows.c:28: X11/StringDefs.h: No such file or directory
windows.c:29: X11/Xaw/Cardinals.h: No such file or directory
windows.c:30: X11/Xaw/Paned.h: No such file or directory
windows.c:31: X11/Xaw/AsciiText.h: No such file or directory
windows.c:32: X11/Xaw/Box.h: No such file or directory
windows.c:33: X11/Xaw/Label.h: No such file or directory
make[1]: *** [windows.o] Error 1
make[1]: Leaving directory `/opt/Emulators/spim-6.2'
make: *** [xspim] Error 2
Ora, ho visto che i summenzionati file richiesti sono richiamati dagli
include dei file "windows.c" e "xspim.c" e dunque potrei creare dei link
simbolici (visto che nella mia SuSE 6.2 i path sono leggermente diversi)
per farglieli trovare, il problema e' che nel mio sistema non esistono
proprio i file "Intrinsic.h" e "StringDefs.h".
Insomma, non so che pesci pigliare, ho letto e seguito alla lettera
tutta la documentazione del README, INSTALL e Makefile.std (e altri), ma
niente da fare, solo un'enorme perdita di tempo, alla faccia del
pinguino (ma credo che lui non c'entri, e' l'autore del programma che
non ha fornito un cavolo di informazione utile).
Ora capisco bene perche' a molte persone che hanno fretta di installare
un programma (per studiarci, per un esame, etc) venga consigliato di
usare la versione Windows.
Sono incazzato come 'na iena perche' mi sa che saro' costretto ad usare
la versione Windows.
Ciao, grazie a te e agli altri che sono intervenuti.
mumble

"make" oppure un "make all".
Ciao, avevo gia' detto che avevo seguito alla lettera tutte le info del
"README", "INSTALL", "Makefile.std" e altri ancora, ma niente da fare.
AriCiao e grazie.
mumble