MSYS2

本文介绍了MSYS2提供的各种IT工具,如GCC、mingw-w64、CPython等,重点讲解了Windows上编译器mingw-w64与ucrt64、clang64的区别,强调ucrt64的稳定性与UTF-8支持。它们共同依赖mingw-w64环境进行编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • MSYS2 提供了最新的 GCC,mingw-w64,CPython,CMake,Meson 等原生构建。

clang 和 gcc 是两个不同的 C/C++ 编译器,而 mingw-w64 是一个 Windows 上的编译和运行时环境。注意,mingw-w64 本身并不是一个编译器,而是一组库、头文件和实用工具。
-gcc 需要 mingw-w64 环境才能在 Windows 上编译程序,加上最初(现已过时)的 mingw 项目就是专为 gcc 设计的,因此通常用 mingw64 代指 64 位的 gcc 和 mingw-w64 环境。
mingw64、ucrt64、clang64 都是 Windows 原生程序(不依赖 cygwin.dll),不过 mingw64 是很早就有的,后两者是最近才新加的,所以只是选一个用的话就 mingw64 就没问题。现在 msys2 官方推荐优先选择 ucrt64,现在 ucrt64 环境已经非常稳定了,而且对 UTF-8 语言环境的支持更好。
简而言之,这三者的区别是:mingw64 与 ucrt64 都是用 gcc 编译器编译的 Windows 64 位程序,只不过它们链接到的 crt(C runtime)不同, mingw64 是链接到了 msvcrt ,而 ucrt64 则是链接到了 Windows 上新的 ucrt 上。而 clang64 很好理解,就是用 clang 而非 gcc 来编译各种库。另外它也是链接到了 ucrt 而非 msvcrt。

三者是共同点是,它们都需要 mingw-w64 环境来进行编译。

03-08
### MSYS2 安装配置教程 #### 下载与安装 为了获取并安装 MSYS2,在官方网站或者 GitHub 仓库下载最新的安装包文件。完成下载之后运行该文件按照提示逐步操作即可完成基本安装流程[^4]。 #### 设置环境变量 当安装结束后,需合理设定一系列环境变量来确保系统的正常运作。具体来说应该包含如下几项: - `MSYS2_HOME`:指向 MSYS2 的根目录位置,例如 `D:\msys64` - `MSYS2_PATH_TYPE`:设为 inherit 表示继承父进程路径 - `MSYSTEM`:指定使用的子系统,默认可选 MINGW64 或者MINGW32 来适应不同的架构需求[^3]。 ```bash export MSYS2_HOME=D:/msys64 export MSYS2_PATH_TYPE=inherit export MSYSTEM=MINGW64 ``` #### Pacman 镜像源配置 对于提高软件包下载效率而言,调整 pacman 使用的镜像站点至关重要。可以通过编辑 `/etc/pacman.d/mirrorlist.mingw32` 和 `/etc/pacman.d/mirrorlist.mingw64` 文件加入更快捷稳定的国内镜像地址如清华大学开源软件镜像站(TUNA)[^1]。 #### 更新系统及软件包 初次启动后建议立即执行全面更新命令以获得最新版本的核心组件和其他已安装程序: ```bash pacman -Syu --noconfirm ``` 此过程可能需要多次重复直至不再有新的升级项目为止。 #### 安装开发工具链 借助于强大的 Pacman 包管理器能够轻松获取各类必要的编译工具集比如 GCC 编译器套件、Make 构建工具以及其他辅助库函数等资源。 ### 常见问题解决方案 #### 解决安装包下载缓慢的问题 如果发现从默认服务器拉取数据过慢,则应考虑更换至更近地理位置或性能更好的镜像源;另外也可以尝试开启多线程加速模式进一步提升传输速率[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值