2016-10-11 5 views
1

I-Code hinzugefügt haben, so etwas wie zu Makefile:Echo funktioniert nicht von Makefile

ifeq "$var" "1" 
    var_1 := 1\ 
    echo "g++ version OK"\ 
    $(info $(var_1)) 
else 
    echo "needs to be updated" 
endif 

Ich Tabs überall in diesem Teil des Codes. Es scheint nicht zu funktionieren, nichts Echos überhaupt beim Ausführen von make, Makefile enthält bereits die Objektdateien und Flags usw. Hat es etwas mit der Position des Codes zu tun? Ich kann mich nicht identifizieren. Bitte helfen Sie.

+0

posten Sie bitte Ihr gesamtes Makefile. Aus diesem Snippet scheint die von Ihnen verwendete Syntax für 'ifeq' nicht korrekt zu sein. Wenn es nicht Teil des Rezepts ist, sollten Sie '$ (info" g ++ version is ok ")' verwenden. – igagis

Antwort

3

echo ist ein Shell-Befehl, es funktioniert nur aus einem Rezept oder $(shell ...) Funktion.

Überall sonst verwenden $(info ...) Funktion.

+0

Hallo. Vielen Dank! Dies hilft aber jetzt habe ich ein neues Problem entdeckt, Variable in ifeq nicht gesetzt, wenn ich versuche, es mit $ (info ..) zu drucken, bekomme ich nichts auf der Konsole, Updates in der Frage. – user5400132

+0

@ user5400132 _Ich habe ein neues Problem festgestellt - dies erfordert eine neue Frage. –