如果直接在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安全。。。