在CMD中使用cl.exe编译的问题

如果直接在cmd中使用cl的话需要设置比较麻烦的INCLUDE和LIB环境变量,

这里介绍一种比较简单的方法:

VS->工具->visual studio 2008 Command Prompt,这个环境下自动就把这些复杂的东西设置好了,同时也是个小黑板,

仔细看,会发现其实是运行了一个bat文件。

如果出现:

 

Setting environment for using Microsoft Visual Studio 2008 x86 tools.
此时不应有 /Utilities/Bin/x86";C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System3
2/Wbem;C:/Program Files/Microsoft SQL Server/90/Tools/binn/;C:/Program Files/Gem
plus/GemSafe Libraries/BIN/"

 

等等的问题,导致各种命令工具不能使用的问题。出现找不到头文件PATH等问题


原因是我装了Direct SDK

解决办法:在系统环境变量设置中,删除Path变量中的"C:/Program Files/Microsoft DirectX SDK (June 2006)/Utilities/Bin/x86"。这是DirectX SDK中的Bug,导致双引用。

可参见http://weblogs.sqlteam.com/mladenp/archive/2008/05/28/Serious-Visual-Studio-2008-install-bug-that-can-break-your.aspx

 

ok,搞定了上面这个问题,新的问题又来了,由于我用的win7系统, 当我尝试用cl编译一个dll时,如cl /c dll_test.cpp又出现

无法打开编译器生成的文件 permission denied 的错误,

原因是,默认用户对没有磁盘写的权限,需要在源文件所在的磁盘的属性中修改,使你的用户有修改的权限,我承认win7确实比xp安全。。。

你可能感兴趣的:(C++)