Windows10上用命令行,奢侈的享受?

当年从Windows跑到Linux和Mac平台时的喜悦就在于好用的命令行工具,比如apt, yum, macports,更在于毫无拘束的gcc,狂放的makefile。虽然stream上可以下载很多游戏,可那是需要付费的,哪像Windows上“自由软件”太多了。

Mac下又一款很好的软件叫做CodeRunner,可以很快速的进行多种语言的单元测试。Windows下没有。今天需要测试一些新的功能,就想着cl + powershell。沮丧的是,我装的vs是2015社区版。不骗您,Visual Studio 2010 Community可真是个大坑啊,在VC/inlcude下居然找不到stdio.h。Google后发现,这一版已经把stdio.h设置为系统内在的了,放在Windows SDKs下,但我找了很久都没发现这玩意。最后我干脆不要这个include了,可用cl编译的时候居然找不到kernel32.lib和libucrt.lib,前面那个还好说,可后面那个又是找不到的状态。

看看我的mac,我默默卸载了vs2015社区版这货,然后五分钟不到下好visual studio 2010,安装。又坑,居然是中文版。算了,将就着用吧,实在懒得再下个英文版了。在这之前,我已经下载了Cygwin和Code::Block。真是没想到Default安装的Cygwin居然不带gcc和vim,那你叫什么Cygwin。更新安装这货,可连国外服务器的速度真慢,等不及的我下载了32M大小的Code::Block。还没等我夸奖CB体量之小,安装后发现居然不自带编译器。怒了,这才下了中文版的VS2010。

使用中文版的Visual Studio 2010真的很low吗?

 

配置命令行CL编译还需要进行一些简单的配制环境变量环节: 

右键我的计算->属性->高级系统设置->高级->环境变量,配制的环境变量(建议配制在用户的环境变量中)的值如下: 
VS2010_DIR: 
C:Program Files (x86)Microsoft Visual Studio 10.0


WIN_SDK: 
C:Program Files (x86)Microsoft SDKs


path: 
C:UsersAdministrator.dnxin;%VS2010_DIR%VCin;%VS2010_DIR%Common7IDE


include: 
%VS2010_DIR%VCinclude;%WIN_SDK%Windowsv7.0AInclude;


lib: 
%VS2010_DIR%VClib;%WIN_SDK%Windowsv7.0ALib;

 

 

用cl编译多文件的时候,比如

cpp文件:main.cpp、module1.cpp、module2.cpp。
lib文件:lib1.lib、lib2.lib。
使用到stdio.h、string.h等标准库

最简单的方法就是:

cl main.cpp module1.cpp module2.cpp lib1.lib lib2.lib /Fetest.exe

分别编译的话

cl main.cpp /c
cl module1.cpp /c
cl module2.cpp /c
cl main.obj module1.obj module2.obj lib1.lib lib2.lib /Fetest.exe

基本上,cl可以替代link.也可以给link传参数。

 


 对了,命令行版本的visual studio是免费的。有篇有关这个编译器的用法的介绍文章可见:http://blog.163.com/yuyang_tech/blog/static/2160500832013118112049372/

原文地址:https://www.cnblogs.com/make217/p/5223793.html