Makefile c++ probleme de dependances
Bonjour a tous,
A court d'idée apres une bataile quie a durée toute l'aprés-midi, je me decide a poser ma question. Je suis en train de developper un projet en C++. J'essai de me creer un makefile (je suis novice), je pense avoir fait le tour d'une grande partie des sites expliquant la creation d'un makefile, mais j'ai du manquer quelque chose.
Mon probleme vient de la gestion des dependances des fichiers. Pour cela j'utilise le mot clé makedepend qui fonctionne. en effet les dependances sont bien générees a la fin du makefile apres le commentaire "# DO NOT DELETE", mais lorsque je lance la commande make j'obtiens l'erreur suivant:
Code:
1 2 3 4
| Drone_SW/PK_Sensors/CameraMgr.cpp:12:43: fatal error: Drone_SW/PK_Sensors/CameraMgr.h: No such file or directory
compilation terminated.
makefile:60: recipe for target 'Drone_SW/PK_Sensors/CameraMgr.o' failed
make: *** [Drone_SW/PK_Sensors/CameraMgr.o] Error 1 |
Avez vous une idée de ce qui se passe et de comment le régler?? voici le makefile dans sa totalité. Je vous remerci d'avance pour vos réponses
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
| #Compilateur
CC=g++
#fichiers utilises : .c .cpp ...
TYPE=cpp
#options de compilation
CFLAGS=-W -Wall -g -M
INCLUDES=\
-I/usr/include \
-I/usr/local/include \
#option de l'edition de liens
LFLAGS=\
-L/usr/local/lib \
#Librairies
LIBS=\
-L/usr/local/lib -lwiringPi \
-L/usr/local/lib -llog4cplus \
#liste des fichiers utilise dans le projet
SRC= \
Drone_SW/PK_Sensors/CameraMgr.cpp \
Drone_SW/PK_Sensors/SensorMgr.cpp \
Drone_SW/PK_Communication/CommunicationMgr.cpp \
Drone_SW/PK_Communication/PK_TCP/TCPReceiverMgr.cpp \
Drone_SW/PK_Communication/PK_TCP/TCPMgr.cpp \
Drone_SW/PK_Communication/PK_TCP/TCPSenderMgr.cpp \
Drone_SW/PK_Communication/PK_UDP/UDPEmitterMgr.cpp \
Drone_SW/PK_Communication/PK_UDP/UDPMgr.cpp \
Drone_SW/PK_Communication/PK_I2C/I2CMgr.cpp \
Drone_SW/PK_Control/CommandMgr.cpp \
Drone_SW/PK_Control/SystemMgr.cpp \
Drone_SW/PK_Actuators/ServoMgr.cpp \
Drone_SW/PK_Actuators/BrushlessMgr.cpp \
Drone_SW/PK_Drone_SW/ConfigMgr.cpp \
Drone_SW/PK_Drone_SW/Factory_Drone.cpp \
Drone_SW/PK_Drone_SW/Drone_SW.cpp \
MainSW_Drone.cpp \
#liste des objet.o utilise dans le projet
OBJ=$(SRC:.$(TYPE)=.o)
#Nom de l'executable a generer
EXEC=SW_Drone
all: $(EXEC)
@echo Compilation...
#Creation executable
$(EXEC): $(OBJ)
$(CC) $(CFLAGS) $(INCLUDES) -o $(EXEC) $(LFLAGS) $(LIBS)
#Creation .o necessaire a la creation de l'executable
%.o: %.$(TYPE)
@$(CC) $(CFLAGS) $(INCLUDES) -$(TYPE) $^ -o $@
depend:
makedepend $(SRC)
.PHONY: clean mrproper
clean:
rm -f $(OBJ) $(EXEC)
mrproper: clean
@rm -rf $(EXEC)
# DO NOT DELETE
Drone_SW/PK_Sensors/CameraMgr.o: Drone_SW/PK_Sensors/CameraMgr.h
Drone_SW/PK_Sensors/CameraMgr.o: Drone_SW/PK_Communication/CommunicationMgr.h
Drone_SW/PK_Sensors/SensorMgr.o: Drone_SW/PK_Sensors/SensorMgr.h
Drone_SW/PK_Sensors/SensorMgr.o: Drone_SW/PK_Communication/CommunicationMgr.h
Drone_SW/PK_Communication/CommunicationMgr.o: Drone_SW/PK_Communication/CommunicationMgr.h
Drone_SW/PK_Communication/PK_TCP/TCPReceiverMgr.o: Drone_SW/PK_Communication/PK_TCP/TCPReceiverMgr.h
Drone_SW/PK_Communication/PK_TCP/TCPMgr.o: Drone_SW/PK_Communication/PK_TCP/TCPMgr.h
Drone_SW/PK_Communication/PK_TCP/TCPSenderMgr.o: Drone_SW/PK_Communication/PK_TCP/TCPSenderMgr.h
Drone_SW/PK_Communication/PK_UDP/UDPEmitterMgr.o: Drone_SW/PK_Communication/PK_UDP/UDPEmitterMgr.h
Drone_SW/PK_Communication/PK_UDP/UDPMgr.o: Drone_SW/PK_Communication/PK_UDP/UDPMgr.h
Drone_SW/PK_Communication/PK_I2C/I2CMgr.o: Drone_SW/PK_Communication/PK_I2C/I2CMgr.h
Drone_SW/PK_Control/CommandMgr.o: Drone_SW/PK_Control/CommandMgr.h
Drone_SW/PK_Control/SystemMgr.o: Drone_SW/PK_Control/SystemMgr.h
Drone_SW/PK_Control/SystemMgr.o: Drone_SW/PK_Drone_SW/Factory_Drone.h
Drone_SW/PK_Control/SystemMgr.o: Drone_SW/PK_Actuators/BrushlessMgr.h
Drone_SW/PK_Control/SystemMgr.o: Drone_SW/PK_Control/CommandMgr.h
Drone_SW/PK_Control/SystemMgr.o: Drone_SW/PK_Sensors/SensorMgr.h
Drone_SW/PK_Actuators/ServoMgr.o: Drone_SW/PK_Actuators/ServoMgr.h
Drone_SW/PK_Actuators/ServoMgr.o: Drone_SW/PK_Communication/CommunicationMgr.h
Drone_SW/PK_Actuators/BrushlessMgr.o: Drone_SW/PK_Actuators/BrushlessMgr.h
Drone_SW/PK_Actuators/BrushlessMgr.o: Drone_SW/PK_Communication/CommunicationMgr.h
Drone_SW/PK_Drone_SW/ConfigMgr.o: Drone_SW/PK_Drone_SW/ConfigMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Drone_SW/Factory_Drone.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Actuators/BrushlessMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Communication/CommunicationMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Control/CommandMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Control/SystemMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Drone_SW/ConfigMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Sensors/CameraMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Sensors/SensorMgr.h
Drone_SW/PK_Drone_SW/Factory_Drone.o: Drone_SW/PK_Drone_SW/Drone_SW.h
Drone_SW/PK_Drone_SW/Drone_SW.o: Drone_SW/PK_Drone_SW/Drone_SW.h
MainSW_Drone.o: MainSW_Drone.h Drone_SW/PK_Drone_SW/Factory_Drone.h |