win32汇编nmake报错
冷血书生 2012-04-18 05:20:25 这个是汇编代码:
.386
.model flat,stdcall
option casemap:none
include windows.inc
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
.const
szCaption db '学以致用',0
szText db '加油吧,坚持就是胜利^_^',0
.code
start:
invoke MessageBox,NULL,offset szText,offset szCaption,MB_OK
invoke ExitProcess,NULL
end start
用ml.exe单独编译和Link 能成功生成exe文件并能执行。
用nmake时出现以下错误:
LINK : fatal error LNK1181: cannot open input file ".asm.obj:"
NMAKE : fatal error U1077: 'Link' : return code '0x49d'
Stop.
我的Makefile文件内容是:
EXE=Mess.exe
OBJS=Mess.obj
RES=Messa.res
LINK_FLAG= /subsystem:windows
ML_FLAG= /c /coff
$(EXE): $(OBJS) $(RES)
Link $(LINK_FLAG) $(OBJS) $(RES)
.asm.obj:
ml $(ML_FLAG) $<
.rc.res:
rc $<
clean:
del *.obj
del *.res
然后设置环境变量的批处理是:
@echo off
set Masm32Dir=E:\masm32
set include=%Masm32Dir%\include
set lib=%Masm32Dir%\lib
set path=%Masm32Dir%\Bin;%Masm32Dir%;%PATH%
set Masm32Dir=
echo on
。。我使用的NMAKE是直接复制到masm32\bin目录下使用的。。
在网上找个几天的没解决问题。希望有人能指点。。谢谢