PDA

View Full Version : [makefile] missing separator


davser
13-03-2008, 10:07
quando compilo un sorgente con

make -f cube.c

mi esce questo errore:

cube.c:1: *** missing separator. Stop.

Ma la cosa assurda è che ieri, su due computer diversi mi funzionava... oggi, senza aver toccato nulla su entrambi i computer mi da questo errore! :eek:

Che caspita è successo?

Il makefile è questo:

CC = gcc
LIBS = -lglut -lGL -lGLU -lX11 -lXmu
CFLAGS = -Wall


All: cube

cube: cube.o
$(CC) -Wall -o $@.out $< $(LIBS)

cube.o: cube.c

clean:
/bin/rm -f *.o

ilsensine
13-03-2008, 10:19
L'errore non credo sia nel makefile, ma in cube.c

davser
13-03-2008, 10:24
Ma io il cube.c non l'ho toccato per nulla da ieri a oggi!

Com'è possibile?

ilsensine
13-03-2008, 10:26
Non ho idea.
Nota che c'è un grossolano errore nel makefile:


cube.o: cube.c


Questa riga è superflua. Però se la indichi, _devi_ indicare la regola per generare il file .o dal file .c (ovvero, devi mettere esplicitamente il comando per la compilazione).

Nel tuo caso make non rigenera cube.o, in quanto non hai indicato tale regola.

davser
13-03-2008, 10:34
Se provo a compilare senza makefile, digitando direttamente

gcc -Wall -o cube.out cube.c -lglut -lGL -lGLU -lX11 -lm

funziona. Quindi dev'esserci un problema nel makefile, cmq ho tolto la riga superflua che dicevi tu, ma non è cambiato nulla.

ilsensine
13-03-2008, 10:37
A me funziona (tolta la riga sbagliata)...

ilsensine
13-03-2008, 10:49
make -f cube.c

Ma quanto sono deficiente...
E' _questo_ l'errore! Stai dicendo a make di usare...cube.c come makefile!

davser
13-03-2008, 11:19
Ma quanto sono deficiente...
E' _questo_ l'errore! Stai dicendo a make di usare...cube.c come makefile!

:eek:

:muro: :muro: :muro:

No, scusate... sono io il deficiente... :doh:

Grazie, cmq! :D