web-dev-qa-db-fra.com

Avertissement de makefile: Attention: le fichier `main.cpp 'a une heure de modification 2.1e + 04 s dans le futur

J'ai une Makefile de travail, mais il y a un avertissement que je ne pourrais pas résoudre. 

#Use the g++ compiler
CC = g++

# Compiler flags:
#   -Wall (most warnings enabled)
#   -g (for debugging with gdb)
CFLAGS = -Wall

# Executable name:
TARGET = deque_adt

all: main.o deque_adt.o deque_adt

$(TARGET): main.o deque_adt.o
    $(CC) $(CFLAGS) main.o deque_adt.o -o $(TARGET)

main.o: main.cpp deque_adt.h 
    $(CC) $(CFLAGS) main.cpp -c

deque_adt.o: deque_adt.cpp deque_adt.h
    $(CC)  $(CFLAGS) deque_adt.cpp -c

clean:
    rm *.o *~ $(TARGET)

erreur:

make: Warning: File `main.cpp' has modification time 2.1e+04 s in the future
g++ -Wall main.cpp -c
g++  -Wall deque_adt.cpp -c
g++ -Wall main.o deque_adt.o -o deque_adt
make: warning:  Clock skew detected.  Your build may be incomplete.

Quelqu'un peut-il m'aider à résoudre le problème? J'ai essayé de basculer entre les éléments mais cela donne toujours le même avertissement.

12
user3467152

Pour développer la réponse de Ben Voigt:

find /your/dir -type f -exec touch {} +

mettra à jour l'horodatage sur tous les fichiers du répertoire. Vous pouvez alors make clean && make à nouveau.

36
that other guy

vérifiez l'heure de votre ordinateur. J'ai eu le même problème et la cause principale était que mon temps d'ordinateur était dans le passé - lorsque je l'ai mis à jour, il fonctionnait parfaitement.

1
RRR