Frage

Ich habe diesen Fehler während (Wieder-) Aufbau, mit Cygwin make.exe Version. 3,81

Error : *** target pattern contains no `%'.
War es hilfreich?

Lösung

Dieser Fehler ist auf eine Anwesenheit eines ":". Daher länger unterstützt es keine Windows-Pfade. Sie benötigen zum Download Version 3.80 und die make.exe im \bin Verzeichnis ersetzen.

Offenbar braucht es cygintl12.dll auch.

Andere Tipps

  • Rollbacks 3,80 ( Geant4 ) machen

    • cd /usr/bin
    • mv make.exe make_381.exe
    • wget http://geant4.cern.ch/support/extras/cygwin/make.exe
    • chmod +x make.exe
  • installiert libintl2 von Cygwin-Setup für den erforderlichen cygintl-2.dll

Ich habe den gleichen Fehler, wenn ein Projekt auf Linux oder OSX zu bauen versucht wurde, die zuvor auf einem Windows-Rechner gebaut und hatte einige .o.d Dateien hanging around in den Ausgabeordner.

Wenn ich manuell gelöscht .o.d Dateien das Problem behoben wurde. Anscheinend ist der "Clean" Befehl meiner IDE (Codelite in diesem Fall) nicht löschen Sie die .o.d Dateien.

Wahrscheinlich aufgrund der Anwesenheit von einem Doppelpunkt nach einem Laufwerksbuchstaben. Zum Beispiel betrachtet

build : $(NativeHeaders)/*

Wenn

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

dann ist alles gut, aber

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

Ergebnisse in den Fehler, die Sie erhalten.

Ich habe immer diese Fehlermeldung, weil ich nicht ein Tab (\ t) Zeichen am Anfang meiner Befehle habe. Ich hatte in meinem vim expandtab gesetzt, so wurde es ein Tab-Zeichen mit 4 Leerzeichen ersetzt. Als ich mich umdrehte, dass ab und verändern Räume auf eine Registerkarte, um sie festgelegt wurde

Ich hatte den target pattern contains no '%' Fehler während mit dem Android NDK Aufbau Cygwin verwenden.

Ich fand den folgenden Link hilfreich:

  

Fehler nach Fabrikat generiert

     
      
  • ‚Zielmuster fehlt. Stopp.‘
  •   
  • ‚mehrere Zielmuster. Stopp.‘
  •   
  • ‚Zielmuster enthalten kein`%‘. Stopp.‘
  •   
  • ‚gemischt implizite und statische Muster Regeln. Stopp.‘
  •   
     

Diese werden für fehlerhafte statische Musterregeln erzeugt. Die erste heißt, es gibt kein Muster im Zielabschnitt der Regel; die zweiten Mittel es mehrere Muster in dem Zielabschnitt sind; die dritten Mittel das Ziel kein Musterzeichen (%) enthalten; und die vierte bedeutet, dass alle drei Teile der statischen Muster enthalten in der Regel Musterzeichen (%) - nur die ersten beiden Teile sollten. Wenn Sie diese Fehler sehen und Sie versuchen, keine statischen Muster Regel überprüft den Wert der Variablen in Ihrem Ziel und Voraussetzung Listen zu erstellen, um sicherzustellen, dass sie nicht Doppelpunkte enthalten. finden Sie unter Syntax der statischen Pattern-Regeln .

Und so, eingeschlossen meine Lösung meiner Systemvariablen von Windows-Format in Unix-Format wie so zu ändern:

  • Statt C:\Android\android-ndk-r10c, benutzte ich /cygdrive/c/Android/android-ndk-r10c für die NDK Weg.

Und ich änderte das NDK Projektpfad /cygdrive/c/Android/project/src/main/jni.

In meinem Fall habe ich CMake unter Cygwin wurde mit, wenn ich diesen Fehler bekam. Es stellte sich die Windows-Version von CMake aus ausgeführt wurde. Anschließend wurden Windows-Pfade in der Make-Datei verwendet. Ich installierte Cygwin-Version von CMake über das Setup-Programm und bekam es funktioniert.

hatte ich dieses Problem auf Linux, wenn das Build-Verzeichnis enthalten ist ein „:“ verursacht durch eine Quecksilber-Kasse zu tun, die ein Verzeichnis mit dem Namen erstellt. „Server: port“

Ich hatte die folgenden in meinem Make-Datei zu ändern, mit Make_381 kompatibel zu sein:
vor:
ARDUINO_BASE_DIR = C: \ Programme / Arduino

jetzt:
ARDUINO_BASE_DIR = \\ Programme / Arduino

Versuchen Sie dies, wenn Sie von Eclipse C / C laufen ++ und Referenzierung von Dateien von Cygwin unter Windows, stellen Sie sicher, c: / Cygwin / ist oder C:. / Cygwin64 / sind kommt nach Ihren bevorzugten Compiler-Tool in Ihrer Windows-Pfad-Umgebung

Beispiel:     Path =; C: \ Yagarto \ ist; C: \ Yagarto-Tools \ sind; C: \ cygwin64 \ sind;

Nachdem Sie die Änderungen vorgenommen haben, Ausfahrt Eclipse und neu starten, damit es wirksam wird (einfach Eclipse-Neustart ohne Beenden wird das Problem nicht lösen kann.

In meinem Projekt wurde obj Ordner wahrscheinlich beschädigt und ich diesen Fehler. Manuell gelöscht obj Ordner. Dann NDK-build abgeschlossen Ordnung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top