Nmake入门(一)

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

今天IDE已经满天飞了,功能也越来越强,对于程序员来说,这确实是好事,不言而喻可以提高工作效率。

但对于初学者来说,直接使用IDE或许并不是好事,原因是IDE为你做了很多事情,而你却并不了解。引侯捷的

一句话:“勿在浮沙筑高台”。下面就让我们看一下,如何在命令行进行程序的编译和链接。要知道,这可是IDE

的主要功能之一啊。

在Windows平台下,命令行的编译主要采用nmake,关于nmake的使用,MSDN中有很详细的说明,不过本文是

针对nmake初学者的,不讲那么复杂。

首先,要使用nmake,你必须为你的程序编写一个makefile文件来描述如果编译和链接你的程序。一个常见的

makefile文件如下:

!include <win32.mak>

all = hello.exe

objs = hello.obj draw.obj

.c.obj :

$(cc) $(cflags) $(cvars) $*.c

hello.exe : $(objs)

$(link) $(guiflags) -out:hello.exe $(guilibs) $(objs)

clean :

del *.obj

第一行的!include<win32.mak>,将引入一些常用的宏定义,如: $(cc) $(link)等。主要是方便使用。

makefile的格式为:要生成的东西 : 生成前面东西是需要的东西(呵呵,写得比较“通俗”啊)。比如下面

的语句:

hello.exe : $(objs)

表示,生成hello.exe 需要 $(objs),而$(objs)是什么呢?这就引出了makefile中的第二种定义方式:

名称 = 要代表的东西,比如 objs = hello.obj ,就表示 objs 代表的是hello.obj和draw.obj,以后

要引用objs,必须使用$(objs)这种方式,这样nmake才能识别。

下面着重介绍一下,win32.mak所引入的宏定义。(待续)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航