MSYS2安装和c编译环境搭建简明教程
MSYS2
MSYS2 (Minimal SYStem 2) 是一个MSYS的独立改写版本,主要用于 shell 命令行开发环境。同时它也是一个在Cygwin (POSIX 兼容性层) 和 MinGW-w64(从"MinGW-生成")基础上产生的,追求更好的互操作性的 Windows 软件。
MSYS2 是MSYS的一个升级版,准确的说是集成了 pacman 和 Mingw-w64 的 Cygwin 升级版, 提供了 bash shell 等linux环境、版本控制软件(git/hg)和 MinGW-w64 工具链。与MSYS最大的区别是移植了 Arch Linux的软件包管理系统 Pacman(其实是与Cygwin的区别)。
特点
- 安装方便
- 自带 pacman 管理,可以使用 pkgtool 来 makepkg
- 较快的源速度(可以修改源地址)
- 自带软件和库较全而且比较新
- 使用mingw-w64工具链,可以编译32位或64位代码(需要自行安装)
- 中文支持好,可以直接输入和浏览中文目录
下载安装
前往 MSYS2 官网下载相应版本:https://msys2.github.io/。32位Windows下载msys2-i686安装包,64位Windows下载msys2-x86_64安装包。
安装
点击“Next(下一步)”
输入安装目录(目录名称必须为ASCII字符短路径,既不能使用重音符号“ ’ ”,也不能使用空格或连接符号“-”)
勾选“RunMSYS2now(现在运行MSYS2)”
更新MSYS2系统文件包
通过以下命令来更新MSYS2系统文件包,由于墙内网络环境太差,可能会出现一些更新包无法获取,多试几次,不行就算了,没什么大的影响:
pacman --needed -Sy bash pacman pacman-mirrors msys2-runtime
更新其他软件包
关闭MSYS2,从开始菜单重新启动MSYS2并更新其他软件包。注意要关闭再重新打开,如果菜单失效,找到安装目录,点击 msys2_shell.bat
启动。
pacman -Su
MSYS2安装完成,你就可以使用MSYS2中的pacman包管理工具安装你喜爱的Vim、Git、GCC等工具软件了。
安装gcc
重新打开 msys2_shell.cmd
。查看可用的 gcc 安装包:
pacman -Sl | grep gcc
可以看到可用的安装包,使用 pacman -S
来安装。我们这里先把 mingw-w64-x86_64-gcc
、mingw-w64-i686-gcc
和 gcc
三个包安装上。事实上这三个随便安装一个都可以做最基本的事情,区别在于 mingw-w64-i686-gcc 可以编译为 32 位平台的程序,mingw-w64-x86_64-gcc 可以编译为 64 位平台的程序,而 gcc
包既不是使用 mingw-64
,也不是使用 mingw-32
,他使用自带的机制。这个可以以后慢慢尝试,我一般没个包都装了三份,如果你磁盘空间够的话,也可以这么来,方便交叉编译测试。
msys2 的包查询结果,每个包前面有标识是属于哪一个平台的标识,比如 mingw32
、mingw64
和msys
。
安装cmake,make,调试器gdb等
和安装gcc类似,使用 pacman -Sl | grep cmake
查询可用安装包,然后使用 pacman -S cmake
进行安装,安装好了之后可以再次查询可用安装包,查看是否显示已安装。