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命令的方式。
Windows使用(类)Unix环境那些事的更多相关文章
- Cygwin 是一个用于 Windows 的类 UNIX shell 环境
cygwin的安装使用 Cygwin 是一个用于 Windows 的类 UNIX shell 环境. 它由两个组件组成:一个 UNIX API 库,它模拟 UNIX 操作系统提供的许多特性:以及 ...
- Cygwin(类UNIX模拟环境)&CURL(强大的http命令行工具)
前言: 需要我用curl试下能否发送post请求调起公司的仿真系统(目前) 跟着大佬的脚步,亲测一把~ 感谢大佬的提供的博客和指导 @咩神 个人博客园及来源地址 Cygwin(类UNIX模拟环境) 一 ...
- MinGW —— Minimalist GNU for Windows、Cygwin —— Windows 下的类 unix 系统
0. 楔子 Windows 下显然是没有 gcc 编译器的.对于一些软件或者工具如果想要在 Windows 平台下运行,而又需要依赖 gcc 编译其中的一些基于 C/C++ 实现的代码. 此时就借助 ...
- 在windows下使用Cygwin模拟unix环境 并安装apt-cyg svn等插件
在windows下使用Cygwin模拟unix环境,并安装apt-cyg,svn等工具 一.Cygwin的安装 1. 下载Cygwin,这个可以到这里下载 ,至于使用32位的还是64位的版本可以根据自 ...
- 在windows下使用Cygwin模拟unix环境,并安装apt-cyg,svn等工具
在windows下使用Cygwin模拟unix环境,并安装apt-cyg,svn等工具 一.Cygwin的安装 1. 下载Cygwin,这个可以到这里下载 ,至于使用32位的还是64位的版本可以根据自 ...
- Unix及类Unix系统文本编辑器的介绍
概述 Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是纯粹的自由软件. Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Em ...
- (十三) [终篇] 一起学 Unix 环境高级编程 (APUE) 之 网络 IPC:套接字
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- UNIX环境高级编程笔记之文件I/O
一.总结 在写之前,先唠几句,<UNIX环境高级编程>,简称APUE,这本书简直是本神书,像我这种小白,基本上每看完一章都是“哇”这种很吃惊的表情.其实大概三年前,那会大三,我就买了这本书 ...
- Unix 环境高级编程 (APUE) 之 网络 IPC:套接字
一起学 Unix 环境高级编程 (APUE) 之 网络 IPC:套接字 . . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级 ...
随机推荐
- c# Tuple新特性
class Operation { internal Tuple<int, int> FindMinMax(List<int> list) ...
- gpg无法生成密钥对的问题
今天在archlinux中生成key的过程中,发现卡在收集随机信息的步骤了. 而在windows系统中启动kleopatra之后,一直是一个任务条,显示loading certificate cach ...
- ResourceExhaustedError 解决方案
原因:网络层太多,运算量太大导致GPU资源耗尽 解决方案: 1.限制GPU的使用: config = tf.ConfigProto()config.gpu_options.per_process_gp ...
- 交替最小二乘ALS
https://www.cnblogs.com/hxsyl/p/5032691.html http://www.cnblogs.com/skyEva/p/5570098.html 1. 基础回顾 矩阵 ...
- NSOperation、NSOperationQueue(III)
NSOperation.NSOperationQueue 常用属性和方法归纳 NSOperation 常用属性和方法 a. 取消操作方法 //可取消操作,实质是标记 isCancelled 状态. - ...
- SVN && BeyondCompare
[1]设置内容 (1)三个步骤对应设置内容 1.1 "D:\Beyond Compare 4\BCompare.exe" %base %mine /title1=%bname /t ...
- npm 代理的设置和取消
管理员权限下的控制台输入: 设置代理 npm config set proxy=http://127.0.0.1:8080 npm config set registry=http://registr ...
- strace跟踪多进程与内核的交互
1.ptrace的说明 ptrace原型: #include <sys/ptrace.h> long ptrace(enum __ptrace_request request, pid_t ...
- HDU 1879 继续畅通工程(最小生成树)
省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).现得到城镇道路统计表,表中列出了任意两城镇间修建道路的费用,以及该道路是否已经 ...
- Python+OpenCV图像处理(七)—— 滤波与模糊操作
过滤是信号和图像处理中基本的任务.其目的是根据应用环境的不同,选择性的提取图像中某些认为是重要的信息.过滤可以移除图像中的噪音.提取感兴趣的可视特征.允许图像重采样等等.频域分析将图像分成从低频到高频 ...