J'ai une base source en C en utilisant autoconf/automake, qui devrait maintenant être compilé en utilisant un compilateur C++. J'ai donc renommé tous les fichiers de .c en .cpp et modifié tous les fichiers makefiles en conséquence. Cependant, je reçois l'erreur suivante (par exemple):Passage en C++: pas de règle pour rendre le fichier file.c nécessaire par fichier.o
make[3]: *** No rule to make target 'tmsConfigFiles.c', needed by 'tmsConfigFiles.o'. Stop.
Le Makefile se compose essentiellement de
bin_PROGRAMS = configparser
configparser_SOURCES = tmsConfigFiles.cpp tmsMoreFiles.cpp tmsEvenMoreFiles.cpp
AM_CXXFLAGS = -I .. -DSOME_DEFINE -Wall -Wextra -etc
Cela fonctionne pour les parties écrasantes du code source (dont certains étaient cpp du début) mais pour certains fichiers le message d'erreur ci-dessus apparaît. J'ai essayé de nettoyer et autoreconf -is etc. en vain.
La même révision fonctionne sur Centos 6, échoue parfois sur Centos 7, échoue toujours sur ma boîte Arch.
Quelqu'un a eu un bug similaire dans autotools ou sait une solution de contournement?
Solution: git clean -fx n'a pas supprimé les répertoires .deps. Les enlever a résolu le problème. – Panke