37 votes

Cygwin erreur de make : *** le modèle de cible ne contient pas de `%'

J'ai obtenu cette erreur lors de la reconstruction, en utilisant cygwin make.exe version : 3.81.

Erreur : *** le motif cible ne contient pas de `%'.

40voto

Reno Points 22138

Cette erreur est due à la présence d'un :. Par conséquent, il ne prend plus en charge les chemins windows. Vous devez télécharger la version 3.80 et remplacer le make.exe dans le répertoire \bin.

Apparemment, il a aussi besoin de cygintl12.dll.

27voto

papahabla Points 443
  • retour en arrière pour faire 3.80 (Geant4)

    • cd /usr/bin
    • mv make.exe make_381.exe
    • wget http://geant4.cern.ch/support/extras/cygwin/make.exe
    • chmod +x make.exe
  • installer libintl2 depuis la configuration de cygwin pour le cygintl-2.dll requis

9voto

Hristo Pavlov Points 61

J'ai obtenu la même erreur en essayant de construire un projet sur Linux ou OSX, qui avait été précédemment construit sur une machine Windows et avait des fichiers .o.d qui traînaient dans le dossier de sortie.

Une fois que j'ai supprimé manuellement les fichiers .o.d, le problème a été résolu. Apparemment, la commande "Nettoyer" de mon IDE (CodeLite dans ce cas) ne supprimait pas les fichiers .o.d.

5voto

Bathsheba Points 23209

Probablement en raison de la présence d'un deux-points après une lettre de lecteur. Par exemple, considérez

build : $(NativeHeaders)/*

Si

NativeHeaders=../../../cpp/generated

alors tout va bien, mais

NativeHeaders=C:/dev/folder/cpp/generated

résulte en l'erreur que vous obtenez.

3voto

Reza Sanaie Points 2930

J'obtenais cette erreur parce que je n'avais pas de caractère de tabulation (\t) au début de mes commandes. J'avais expandtab dans mes paramètres vim, donc il remplaçait un caractère de tabulation par 4 espaces. Lorsque j'ai désactivé cela et changé les espaces en tabulation, le problème a été résolu

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X