MYSY环境搭建

Evek Golden Lv4

MSYS环境搭建

1. 安装 MSYS2

MSYS2 是一个强大的工具链,提供类 Unix 环境和包管理器,适合搭建嵌入式开发环境。

  1. 下载 MSYS2 安装程序

  2. 安装 MSYS2

    • 运行下载的安装程序,按照提示选择安装路径(建议使用默认路径,如 C:\msys64),以下内容均默认此路径为安装路径进行描述。
    • 安装完成后,启动 MSYS2 终端(通过开始菜单中的“MSYS2 MSYS”)。
  3. 更新 MSYS2 系统(重要):

    • 在 MSYS2 终端中运行以下命令,确保系统和包是最新的:

      1
      pacman -Syu
    • 如果提示需要关闭终端,关闭后重新打开 MSYS2 终端,再次运行:

      1
      pacman -Syu

2. 安装开发环境

MSYS2 提供多个工具链环境(如 MSYS、MSYS、MINGW32、MINGW64、UCRT64 等)。对于 Windows 上的开发,通常使用 MINGW64(64 位)MINGW32(32 位)、UCRT64(64位)UCRT32(32位)。本文以 MINGW64 和 UCRT64为例,描述安装过程,实际使用中二选一即可。

mingw64和ucrt64的区别

特性MINGW64UCRT64
C 运行时库使用 MSVCRT(Microsoft Visual C++ Runtime)使用 UCRT(Universal C Runtime)
Windows 兼容性兼容较老的 Windows 系统(如 XP)需要 Windows 10 或更高版本
性能和现代性较老的运行时,功能较旧更现代的运行时,性能优化更好
库支持依赖 MinGW 的库,部分库可能较旧支持最新的 Windows API 和 C 标准库
使用场景适合需要兼容旧系统的项目适合现代 Windows 应用开发
DLL 依赖依赖 msvcrt.dll依赖 ucrtbase.dll(Windows 自带)
社区支持广泛使用,生态成熟较新,但逐渐成为主流
  • MINGW64:适合需要兼容旧 Windows 系统的项目,或对传统 MinGW 生态依赖的项目。
  • UCRT64:更适合现代开发,推荐用于新项目,尤其是需要最新 C/C++ 标准或 Windows API 的场景。

mingw64

MSYS2 使用 pacman 包管理器来安装所需的开发工具。以下是安装步骤:

  1. 安装基础开发工具和MINGW64 环境的完整工具链

    打开msys2安装根目录下的msys2.exe,依次执行以下命令:

    1
    2
    pacman -Syu
    pacman -S --needed base-devel mingw-w64-x86_64-toolchain
  2. 配置环境变量

    为了在 Windows 命令提示符或 IDE 中使用 UCRT64 工具链,需添加环境变量。

    1. 找到 mingw64工具链路径
      • mingw64工具链位于 C:\msys64\mingw64\bin
    2. 添加环境变量:
      • 右键“此电脑” -> “属性” -> “高级系统设置” -> “环境变量”。
      • 在“系统变量”或“用户变量”的 Path 中添加:C:\msys64\mingw64\bin
      • 保存更改。
  3. 验证工具链

    打开msys2安装根目录下的mingw64.exe,运行:

    1
    2
    3
    4
    gcc --version
    g++ --version
    cmake --version
    gdb --version
  4. 集成到 IDE(可选)

    你可以使用 Visual Studio Code 或其他 IDE 集成 MSYS2 工具链:

    1. 安装 Visual Studio Code

    2. 安装扩展

      • 安装 C/C++ 扩展(由 Microsoft 提供)。

      • 安装 CMake Tools 扩展。

    3. 配置 VS Code

      • 在 VS Code 设置中,指定编译器路径为 C:\msys64\mingw64\bin\g++.exe

      • 配置 CMake Tools 使用 MinGW Makefiles 生成器。

ucrt64

MSYS2 使用 pacman 包管理器来安装所需的开发工具。以下是安装步骤:

  1. 安装基础开发工具和ucrt64 环境的完整工具链

    打开msys2安装根目录下的msys2.exe,依次执行以下命令:

    1
    2
    pacman -Syu
    pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain
  2. 配置环境变量

    为了在 Windows 命令提示符或 IDE 中使用 UCRT64 工具链,需添加环境变量。

    1. 找到 ucrt64工具链路径
      • ucrt64工具链位于 C:\msys64\ucrt64\bin
    2. 添加环境变量:
      • 右键“此电脑” -> “属性” -> “高级系统设置” -> “环境变量”。
      • 在“系统变量”或“用户变量”的 Path 中添加:C:\msys64\ucrt64\bin
      • 保存更改。
  3. 验证工具链

    打开msys2安装根目录下的ucrt64.exe,运行:

    1
    2
    3
    4
    gcc --version
    g++ --version
    cmake --version
    gdb --version
  4. 集成到 IDE(可选)

    你可以使用 Visual Studio Code 或其他 IDE 集成 MSYS2 工具链:

    1. 安装 Visual Studio Code

    2. 安装扩展

      • 安装 C/C++ 扩展(由 Microsoft 提供)。

      • 安装 CMake Tools 扩展。

    3. 配置 VS Code

      • 在 VS Code 设置中,指定编译器路径为 C:\msys64\urct64\bin\g++.exe
      • 配置 CMake Tools 使用 MinGW Makefiles 生成器。

3. 补充说明

如果需要安装ucrt32(32位)环境,在安装基础开发工具和mingw64或curt64 环境的完整工具链步骤改为执行

1
2
3
4
5
6
7
8
# 按需安装
# ucrt32 (32位)
pacman -Syu
pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain

# mingw32 (32位)
pacman -Syu
pacman -S --needed base-devel mingw-w64-i686-toolchain

4. 注意事项

  • 工具链选择:如果需要 32 位开发,安装 mingw-w64-i686-gcc 等工具。
  • 包管理:定期运行 pacman -Syu 更新工具链。
  • 磁盘空间:MSYS2 和工具链可能占用数 GB 空间,确保磁盘空间充足。
  • Windows 防病毒:某些防病毒软件可能误报 MSYS2 的可执行文件,需添加例外。

5. 故障排除

  • 命令未找到:确保 C:\msys64\mingw64\binC:\msys64\ucrt64\bin已添加到环境变量。
  • GDB 崩溃:确保程序编译时带 -g 标志,且 GDB 版本与 GCC 兼容。
  • Title: MYSY环境搭建
  • Author: Evek Golden
  • Created at : 2025-08-21 15:17:00
  • Updated at : 2026-06-12 08:57:02
  • Link: https://blog.cocodemo.uno/posts/ab598f11/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments