Make: *** plusieurs modèles cible. Arrêter
Je suis actuellement en train de travailler sur un cours d'introduction à C++ du projet, à l'aide d'Eclipse Juno, avec la CDT et Cygwin C++. Je suis en utilisant une architecture MVC et ont obtenu simplement le code à un point où je peux exécuter le fichier exécutable et de voir des résultats. Quand je créer l'application, le compilateur ne jette pas les erreurs; cependant, lorsque je lance l'application via Eclipse, l'application reconstruit et affiche l'erreur suivante:
make: *** multiple target patterns. Stop. GasFinderTUI.d KyleGasStationFinder/Debug/src/View line 1 C/C++ Problem
Voici mon code de ce fichier:
src/Controller/GasFinderController.d src/Controller/GasFinderController.o: \
../src/Controller/GasFinderController.cpp \
../src/Controller/GasFinderController.h \
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/LocalGasStations.h \
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/GasStation.h \
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/GasPump.h \
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/Utilities.h
../src/Controller/GasFinderController.h:
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/LocalGasStations.h:
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/GasStation.h:
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/GasPump.h:
C:/Users/Kyle/Dropbox/Workbench/KyleGasStationFinder/src/Model/Utilities.h:
J'ai essayé de nettoyage et de reconstruction, sans l'aide de la fonction d'exécution, et génère l'application proprement. J'ai également exécuter le réel .fichier exe sans Eclipse, et l'application s'exécute comme prévu. Bien que l'exécution de l'application séparément à partir d'Eclipse est un substitut acceptable, je vais écrire plusieurs applications en C++ dans un avenir proche et apprécient la possibilité d'exécuter à partir d'Eclipse. Ces applications seront également examinés et classés à l'aide d'Eclipse et je suis sûr que mon instructeur tiens également à ce confort.
J'ai regardé cette question qui recommande de changer le C:/, soit un chemin relatif nom, ou /cygwin/c/. Mes autres .d fichiers, ainsi que mes chemins à inclure, utiliser un chemin relatif, et que ces fichiers ne posent aucun problème. Bien que je pense de ces deux solutions, l' .d fichier est recréé à chaque compilation. Tous les changements que j'ai faits ont été écrasés à chaque génération.
Ne Eclipse et/ou Cygwin C++ contient tous les paramètres qui pourraient me permettre de prévenir cette complication de se produire dans l'avenir?
- Cette question est à propos de
Make
(ou Eclipse) et de ne pas le compilateur, donc je l'ai rebaptisée elle et utilisé pour lui donner une meilleure exposition à ceux avec le droit de connaissances. - Le problème est exactement ce que le
C:/
devrait être/cygdrive/c/
. Faire interprète le côlon comme la définition d'un pattern cible; quand vous avez deux points multiples sur une ligne, vous obtenez unmultiple target patterns
erreur. Vous aurez probablement à écrire un script pour ce que les sorties de l'.d
fichiers, ou un post-traitement de l'étape dans le cadre de la construction du système, qui effectue une recherche automatique et le remplacer tournantC:/
en/cygdrive/c/
.
Vous devez vous connecter pour publier un commentaire.
J'ai compris que je peux exécuter le projet dans Eclipse, seulement si je nettoyer manuellement avant chaque exécution. Aussi, les versions sont réussies si je nettoyer manuellement avant chaque construction. Je vais regarder dans la création d'un script personnalisé pour la compilation après l'envoi de cette mission.
Vous pouvez également supprimer les multiples modèles cible " erreur lors de l'utilisation de l'externe 'Gnu' builder. Je suis à l'aide d'Eclipse Kepler avec la CDT 8.3.0, et ne les suivants:
Propriétés du projet | C/C++ Build | Paramètres | Cygwin C [ou C++] Compilateur | Comprend,
/cygdrive/d/cygwin64/usr/share/quel que soit/include
D:/cygwin64/usr/share/quel que soit/include
Cygwin-style chemins dans les dépendances, ce qui supprime l'erreur ci-dessus, comme c'est le
deux-points ':' personnages de ces fichiers qui la provoque, comme @andrewdotn dit.
Je me rends compte ci-dessus est spécifique à une chaîne d'outils de réglage, mais au moins, ça donne une alternative possible au moyen de l'obtention de la gestion de projets de travail correctement.
Ceci est mon premier post sur StackOverflow, par la manière, donc, si je fais tout à l'étiquette d'erreurs, ils involontaire 🙂