cmd或powershell下用cl 编译c/c++程序的配置
一直在做C#, 偶尔用C做一个小测试,总觉得用vs启一个Project很是浪费。加上个人编程基础差,需要仔细的了解c程序编译过程相关的知识,经过不断的上网搜索和自己的实践后,产生了这篇文章.
环境:win7 32位,vs2010,这里主要讲述配置的过程.
●进入 C:\Program Files 目录查看,要关注的是下图标红的两个文件夹。
●在C盘下新建一个Test文件夹,随便建立几个c,或者cpp文件,内容就是最简单的hello word
大家看到了有一个set.bat文件,这就是采用cl编译最重要的一个步骤:配置环境变量
右键set.bat文件编辑,用记事本打开可看到内容如下:
配置好1,2,3三个变量,4,5,6是对前三个变量的重复使用,1,2,3对应了前面标红的两个文件夹,需自行
查看是否含有相关目录,vs的版本不同,对应的目录也会不同。
IDE=C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE 这一步配置是必须的
是防止执行cl时提示“不到mspdb*.dll”
(也可将C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE目录下的mspdb*.dll和拷贝到 C:\Program Files\Microsoft Visual Studio 10.0\VC\bin解决此问题)
打开cmd 进入C:\test目录,按下图步骤执行
可见:
1:直接执行cl编译文件,由于没有配置环境变量,提示错误
2:执行批处理,应用环境变量
3:再次编译
powershell创建目录4:成功,生成文件。
注:关闭此cmd窗口后,set.bat的配置就会丢失,即:配置只在此窗口有效。这里不直接在系统里修改环境变量是为了防止冲突,反正也是偶尔用用,
每次打开cmd时直接执行以下set.bat 也很快.
在cmd下执行set 可看到所有变量
powershell作为新的shell工具,将来是要替代cmd的,这里也用powershell走走流程
思路是相同的,只不过powershell的脚本设置方式不同而已。
在Test目录下增加一个pset.ps1的脚本
内容如下:
powershell进入c:\test目录,按下图执行
如果脚本不能执行,提示没有权限则做如下修改
无法加载文件D:\pset.ps1,因为在此系统中禁止执行脚本。有关详细信息,请参阅"get-help about_signing"。
所在位置行:1 字符: 11
+ .\pset.ps1 <<<<
+ CategoryInfo          : NotSpecified: (:) [], PSSecurityException
+ FullyQualifiedErrorId : RuntimeException
PS C:\test> Set-ExecutionPolicy Unrestricted