命令行下编译C++代码,需要设置编译环境,分别是:头文件,库文件,以及编译器cl.exe以及连接器link.exe的位置。

1)简单方式,打开VS05,点击Tools,选择Visual Studio 2005 Command Prompt,这个时候就已经配置好编译的环境。

测试:尝试输入cl 或者link(exe后缀可省略),如果能够显示cl的命令参数表明设置成功,可以开始编译。失败提示:’cl’不是内部或外部命令,也不是可运行的程序或批处理文件。

2)找到vcvarsall.bat批处理,然后在cmd下运行,就能够配置好编译环境,实际上第一种方法就是调用了该批处理文件。成功提示如下:

Setting environment for suing Microsoft Visual Studio 2005 z86 tools.

该文件一般是在Program Files\Microsoft Visual Studio 8\VC或者Program Files (x86)\Microsoft Visual Studio 8\VC。可以使用Everything进行搜索

3)手动添加系统变量到环境变量中

变量名:INCLUDE

变量值:D:\Program Files (x86)\Microsoft Visual Studio 8\VC\include;D:\Program Files 

(x86)\Microsoft Visual Studio 8\VC\PlatformSDK\Include

变量名:LIB

变量值:D:\Program Files (x86)\Microsoft Visual Studio 8\VC\lib;D:\Program Files 

(x86)\Microsoft Visual Studio 8\VC\PlatformSDK\Lib

变量名:path

添加cl和link的执行路径:D:\Program Files (x86)\Microsoft Visual Studio 8\VC\bin;D:

\Development\Common7\IDE

配置D:\Development\Common7\IDE,是为了避免提示找不到mspdb80.dll文件

4)手动指定编译的INCLUDE头文件以及链接的LIB

-I指定头文件

例子:

cl.exe main.cpp -/I”D:\Program Files (x86)\Microsoft Visual Studio 8\VC\include” 

kernel32.lib advapi32.lib user32.lib

这种情况下,也应该指定kernel32.lib所在的具体目录!!

注意:

1)cl.exe编译完成之后,会自动调用link.exe进行链接

2)cl.exe参数的lib库文件列表是传递给link.exe使用的

如下是一些简单的编译参数:

/c:只编译,不链接