Win32汇编First
搞了一天的汇编的IDE,哈哈,纪念一下。
首先嘛,安装Masm32 SDK,恩撞在了C盘。
然后写一个Var.bat
这样的:
以上的代码摘自罗云彬的汇编书,恩,set Masm32Dir是一个Marco,写的是安装masm的路径,其实就是为了指向你的lib和inc方便用的。不写也没啥……
引用它需要%XXXX%(这和Makefile文件不同,Makefile用的是$(XXXX)
写完之后保存,然后每次运行你的CMD环境的时候都要先运行之……
挺麻烦的,希望有一天能整合成一个比较方便的IDE环境。
===========================================================================================
之后是编写Makefile文件,搞了很长时间,谢谢心得,留着自己看看。
如下是一个Makefile文件:
注明:#后面的是注释
前面的部分是Macro。Macro的定义就是XXX = XXX很简单吧,哈哈C语言里是#define.......
Macro的调用就是$,前面已经说了,但是要注意到如果$后面的Marco名不是单个字符的话就要用圆括号括起来
否则Link的时候就会出现问题,他不识别。我用的nmake的9.0版,算是比较新的了。
link_flag是链接选项,一般都是/subsystem:windows(编写Windows程序的时候)
ml_flag是编译选项,/c /coff(/c和/coff之间要有空格)去查link.exe and ml.exe的选项,自己去理解他们的意义吧。(可以用link /?查看)
再之后是就是写依赖关系了:
xxx:xxx表示前面的一项编译或链接的时候需要后面的一项。若果linker在链接的时候找不到依赖项会提示“linker不会处理xxxx文件”这时候就要修改Makefile文件里,或者把所依赖的文件拷到相应的文件夹里,比较好的做法是把那儿文件的路径加到系统的环境变量PATH中。
一般的编译依赖之后就直接跟着编译命令。
然后是汇编编译和资源编译的默认命令
$<是Makefile自带的那种Marco.
$@——全路径的目标文件
$*——除去扩展名的全路径目标文件
$?——所有源文件名
$<——源文件名(只在隐含规则中)
至于Clean就是可选项了,如果你想留着Windows装入之前的Obj什么的就不写了。
=========================================================================================================
对了,好像把link.exe和ml.exe以及rc.exe放在环境变量里把
然后打开UltraEdit什么的写汇编程序,然后用cmd去ml和link
当然,有了Makefile就直接用nmake就行了。
=========================================================================================================
怎么样,看到汇编窗口了吗?
哈哈感觉还8错。
听了一天的Lady Gaga的music了,发现姐们可以,唱歌很好听。
尤其喜欢Poker Face & Bad Romace........
特别喜欢Poker face的MV……
感觉其他的歌就……
现在这两天不是很喜欢听Eminem的歌了,估计听太多了,为了练一首歌老是不停地循环,再好听也烦了,就像T.I. 的XXXX(忘了名字了)
还有Font Minor的Remember the name,还有Eminem的Mocking Bird 和Lose yourself什么的……
睡觉了,接着听。