最近读C++ Primer 5发现是用vc11的nmake工具编译文件,类似linux下的makefile工具,很方便的一键清除和一键编译。就想利用这种方法编译一些小代码段,这样不必打开笨重的VS2012。
利用CL命令行编译程序:
写一个简单的bat脚本查找到vc环境变量的配置文件:
@echo off
call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\vsvars32.bat"
call NMAKE
cmd
利用CL命令行编译C++文件:
cl /EHsc /nologo /I.. filname.cpp
NMAKE实际上是批量调用CL来编译链接目标文件。
下面来看下怎么配置makefile
一个简单的makefile例子编译WordCount.cc文件:CPP = cl
CPPFLAGS = /EHsc /nologo /I.. $(LOCFLAGS)
LOCFLAGS = -I..\7 -I..\6
OBJECTS = WordCount.exe
all: $(OBJECTS)
.cpp.obj:
$(CPP) $(CPPFLAGS) /c $<
.obj.exe:
$(CPP) $(CPPFLAGS) $<
clean:
del *.obj core *.stackdump
clobber: clean
del *.exe
写一个bat文件调用makefile:
@echo off
call "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\vsvars32.bat"
call nmake -nologo
cmd
或者把vsvar加入环境变量,然后在本文件夹打开cmd:
编译:cmd: NMAKE
清除:cmd: NMAKE clean
删除:cmd: NMAKE clobber