想在Windows系统上获得接近Linux的开发体验?
对于需要在Windows环境下进行类Unix开发的工程师来说,Cygwin和MinGW-w64是绕不开的两个成熟方案。它们的技术路线截然不同:Cygwin通过一个名为cygwin1.dll的兼容层来模拟POSIX接口,提供了一个几乎完整的类Unix运行时环境;而MinGW-w64则直接生成原生的Windows可执行文件,不依赖额外的DLL,部署起来更轻便,运行效率也更高,因此常被视为现代Windows开发和分发的更优选择。
2025年主流加密货币交易所:
- 欧易OKX >>>进入官网<<< >>>官方下载<<<
- 币安Binance >>>进入官网<<< >>>官方下载<<<
一、安装Cygwin
简单来说,Cygwin的核心就是那个cygwin1.dll。它能在Windows内部构建一个稳定可靠的类Unix环境,自带bash命令行、GCC编译器、Vim编辑器、Make构建工具等一系列主流开发组件。
第一步,前往Cygwin官网下载对应系统的安装程序:64位系统用setup-x86_64.exe,32位系统用setup-x86.exe。
第二步,双击运行安装程序,选择【Install from Internet】,然后点击下一步。
第三步,设置一个本地软件包缓存路径,比如C:\cygwin64\packages,再点击下一步。
第四步,根目录保持默认的C:\cygwin64,继续下一步。
第五步,网络连接方式选择【Direct connection】,点击下一步。
第六步,从镜像站点列表中任选一个(例如北美常用的镜像),点击下一步。
第七步,在软件包列表中展开【Devel】分类,勾选gcc-g++、make、gdb、git、vim这些核心开发工具。如果需要SSH远程访问功能,别忘了再勾选【Net】分类下的openssh。
第八步,点击下一步开始下载安装,完成后勾选【Create icon on Desktop】,点击完成即可。
二、启动并配置Cygwin终端
安装完成后,双击桌面图标就能进入熟悉的bash命令行界面了。你会发现,它的路径规范、文件权限模型以及操作逻辑,都高度还原了Linux的使用习惯。
首先,首次运行时系统会自动创建用户主目录,路径格式通常是/cygdrive/c/Users/YourName/home/YourName。
接着,运行vim .bashrc命令,在文件末尾添加一些常用的环境变量配置,比如export PATH="/usr/local/bin:$PATH"。
然后,执行source .bashrc让新配置立即生效。
最后,输入gcc --version,如果成功显示版本信息,那就恭喜你,C语言编译环境已经准备就绪了。
三、安装MinGW-w64(现代Windows开发推荐方案)
MinGW-w64的方案更“原生”一些。它不引入兼容层DLL,直接输出标准的Windows PE格式程序,发布时无需捆绑额外运行库,因此特别适合独立部署和跨平台协作。目前,最成熟的一体化集成环境是MSYS2,它内置了强大的pacman包管理器和完整的开发工具链,支持UCRT、MINGW64、CLANG64等多种编译目标。
第一步,访问MSYS2官网,下载最新版的msys2-x86_64-*.exe安装包。
第二步,运行安装程序,建议将安装路径设置为纯英文且不含空格的目录,例如C:\msys64。勾选【Run MSYS2 now】后点击下一步。
第三步,首次启动后,在终端中输入pacman -Syu来更新基础系统。如果提示需要重启,请关闭当前窗口,然后重新打开名为【UCRT64】的终端(这是为Windows 10/11优化的首选环境)。
第四步,再次运行pacman -Su完成剩余的更新。
第五步,安装核心开发套件:在UCRT64终端中执行pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain。
第六步,这条命令会安装GCC、G++、Make、CMake、GDB、pkg-config等全套开发工具,它们的可执行文件默认位于/mingw64/bin/目录下。
四、用MinGW-w64编译第一个C程序
在UCRT64环境下,编译器采用了x86_64-w64-mingw32-前缀,这确保了程序会链接到Windows UCRT运行时。因此,生成的程序在Windows 10/11及部分旧版系统中都具备良好的兼容性。
第一步,在UCRT64终端中执行:mkdir ~/hello && cd ~/hello。
第二步,创建源文件:echo(此处原文不完整,为保持信息完整,此处保留原文未完成语句。根据上下文,此处应为创建并编辑一个C源文件,例如hello.c)。
