Windows使用(类)Unix环境那些事
之前的博文中有不少涉及到win下使用unix环境的一些东西,但都是为了做别的事情,还是写一个专门讲这个主题的文章吧。
主角:Cygwin、mingw-W64、MSYS2。
注:mingw已经停止更新很多年了,不再讨论,mingw-w64是专门替代的。个人最喜欢用MSYS2,因为可以使用pacman包管理器。
一、这些东东有什么用?
都是在windows系统中构建unix环境的一些工具,这样就可以在Windows下使用一些unix上面的软件。
二、这些工具之间的区别与联系是什么?
有两个地方对这个问题探究的很深入我就不赘述了
1、https://www.biaodianfu.com/cygwin-ming-msys.html
2、https://www.zhihu.com/question/22137175
建议好好看,多看几遍。
如果看了上面的回答,那么就很容易理解了,你想在windows下使用gcc、gdb、emacs等等unix原生的东西,就需要在win下安装这几个工具中的一个来实现。
三、怎么安装这些工具?
Cygwin
官网:https://cygwin.com/
之前做Windows XP上装SSH的时候详细介绍过:http://www.cnblogs.com/feipeng8848/p/8555648.html
mingw-W64
官网:http://mingw-w64.org/doku.php
去这个连接直接下载压缩包。也可使用在线安装器,但是速度很慢,我就直接下载的压缩包。
得到安装包后解压缩,然后我放置到了 “C:\Program Files\mingw-w64\” 目录下,mingw-w64是手动创建的,然后再添加环境变量
上图中的完整路径是:C:\Program Files\mingw-w64\x86_64-8.1.0-release-posix-seh-rt_v6-rev0\mingw64\bin
然后再powershell(或者cmd)中输入 “gcc -v” 就能看见gcc版本号了,说明安装成功。
MSYS2
官网:http://www.msys2.org/
官网首页就是安装教程,非常详细就不做介绍了。装完后别忘记配置环境变量以在cmd或者powershell中直接使用。
安装完之后更换源会提高安装软件的速度,详情看:https://www.cnblogs.com/feipeng8848/p/10037962.html
四、应用场景举例
比如使用vscode调试C语言。就要用到gcc、gdb。可以选择使用Cygwin、mingw-w64、MSYS2这三个工具中的任何一个来安装gcc、gdb,然后配置下环境变量就可以用。
mingw-64
安装完mingw-w64(其实就是解压压缩包)bin目录下就有gcc、gdb。
Cygwin
在安装界面中选中gcc、gdb安装,不要忘记选择gcc的依赖,这就有点麻烦,可能多选少选。
MSYS2
先搜索
pacman -Ss gcc
然后找到完整的名字后安装:
pacman -S mingw-w64-x86_64-gcc
非常喜欢这个pacman命令的方式。