Windows应用程序开发多数选择Visual Studio集成开发环境。但是我不太想用它,原因之一是它体积庞大(占用几个G的空间);另一方面我习惯了Linux系统下的编译方式。因此我打算使用MinGW-w64和Visual Studio Code来搭建开发环境。
一、下载工具链
MinGW(Minimalist GNU for Windows)是一个用于Windows平台的开发工具集,它提供了一组GNU工具和库,可以用于编译和构建本地的Windows应用程序。但是该项目(mingw.org)已经停止,新的改进项目称为“Mingw-w64”。
Mingw-w64是于2007年与MinGW分道,以提供64位支持和更新的API。从那时起,它获得了广泛的使用和分发。Mingw-w64是头文件、导入库、库和工具的集合,当与编译器工具链(例如GCC或LLVM)结合使用时,为构建本机Windows 应用程序和库提供了完整的开发环境。
Mingw-w64的官网为www.mingw-w64.org
在官网的“下载(Download)”下有“预编译工具(Pre-build tools)”和“源代码(Source Code)"两个选项。如果你习惯从源代码编译,可以下载源代码。“预编译工具(Pre-build tools)”中提供了很多选项,根据自己的需要选择。这里我使用MinGW-W64-builds,如下图所示:
单击进入下载页面,如下图所示:
点击”Github"进入下载页面(https://github.com/niXman/mingw-builds-binaries/releases),选择最新的版本,有如下可选项:
其中:
i686和x86_64是控制器的架构,前者是32位,后者是64位(适配相应的操作系统);
15.1.0是版本号(GCC的版本号);
mcf代表对多核原子操作(Multi-Core atomics) 的支持,更具体地说是指包含了 "mcfgthreads" 库;
posix是“Portable Operating System Interface”的缩写,即“可移植操纵操作系统接口”多用在类似Unix系统(如Linux和macOS)设计的API风格;
win32:面向Windows系统;
sjlj:表示这个工具链使用“Setjmp/Longjmp”异常处理机制。SJLJ是一种更传统的异常处理方式,它通常用于那些不支持或不完全支持Windows结构化异常处理(SEH)的操作系统;
seh:表示这个工具链使用Windows的结构化异常处理(Structured Exception Handling, SEH);
ucrt是Universal C Runtime的缩写,它是Windows10及更高版本中包含的一个新运行时库。它提供了与操作系统更紧密集成的API,并通常用于更现代的Windows应用程序;
msvcrt是Microsoft C Runtime的缩写,它是Microsoft提供的传统C运行时库;
如果你的目标平台是Windows10或更高版本,并且你希望利用最新的API和功能,ucrt可能是一个好选择。使用ucrt的库通常比使用msvcrt的库更小,因为它们不包含一些旧的、不再需要的API。
msvcrt提供了广泛的API支持,包括一些旧的、可能不再常用的API。如果你的代码依赖于msvcrt特有的API,或者你需要确保你的程序能在较旧的Windows版本上运行,msvcrt可能更适合你。
rt_v12:“runtime version”,即运行时库版本号;
.7z:文件的压缩格式;
这里我选择“x86_64-15.1.0-release-posix-seh-ucrt-rt_v12-rev0.7z”,将其下载后解压缩,内有mingw64文件夹,将其放到C盘根目录下,即存在C:\mingw64\
二、配置环境变量
与在Linux下搭建开发环境类似,这里也许需要修改环境变量。
选中“我的电脑”右键单击,在菜单中选择“属性”->“高级系统设置”->“环境变量”,如下图所示:
在弹出的对话框总选择“系统变量”->“Path”,打击“编辑”按钮,如下图所示:
在其中添加工具链的路径C:\mingw64\bin,如下图所示:
至此工具链安装完成。检验一下:
打开命令行,输入:
gcc -v
出现类似下面的图片说明已经成功安装:
三、解决不能使用make命令的问题
在MinGW-W64中,make是一个自动化编译构建工具,并无32位64位之分,所以MinGW-W64直接沿用了32位版本中的make工具,为了表明这个原因,make工具的名称变为mingw32-make.exe。因此我们在命令行使用的时候不能直接使用make命令,而需要输入完整的名称:
mingw32-make -v
如下图所示:
这样不太方便,我们可以把mingw32-make.exe文件复制一份,然后将副本重命名为make即可,如下图所示:
四、Visual Studio Code的安装
到官网(https://code.visualstudio.com)下载安装即可。安装完成后,安装C/C++相关的插件。
好了,这次我们完成了Windows下的开发环境搭建,可以使用类似Linux的风格来开发Windows平台的应用程序了。
发表评论