2009-04-27 5 views
0

entkommen Ich mag würde unter NMake Code machen check.mak Datei mit folgendem Inhalt zu produzieren: $ (A) stattdessen ich die folgende Fehlermeldung erhalten: „NMAKE: schwerwiegendem U1040-Fehler: interner Fehler: Makroerweiterung " Irgendwelche Vorschläge? Meine nmake Version ist 9.00.30729.01 (VC 2008).Nmake - einfache Frage zu

OPTION = A 
FILE = check.mak 

all : 
    @echo "$$($(OPTION))" > $(FILE) 

Antwort

1

Das sieht wie ein Fehler in NMAKE aus. Nach einigen Experimenten fand ich, dass die folgende Behelfslösung Sie die Ausgabe gibt Ihnen wollen, obwohl es ein wenig hässlich ist:

OPTION=A 
FILE=check.mak 
LPAREN=(
RPAREN=) 

all: 
     echo $$$(LPAREN)$(OPTION)$(RPAREN) > $(FILE) 

Für das, was es wert ist, ich habe auch versucht, Ihre Original mit dem NMAKE-Emulator, der meine Firma verkauft, und stellte fest, dass es das Makefile ohne Fehler verarbeiten konnte, weshalb ich zuversichtlich bin zu sagen, dass das beobachtete Verhalten ein Fehler in der NMAKE-Implementierung und nicht eine Einschränkung der NMAKE-Syntax ist.

Hoffnung, die hilft,

Eric Melski

+0

ich auf MS Connect dieses Thema angesprochen - https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=435762 In Kurz die Antwort ist MS egal. –