使用msys2 mingw64编译gcc

2023-11-06

我们在msys2中使用pacman安装的GCC默认是不能显示中文帮助的
在这里插入图片描述
而Linux下是可以显示中文的:
在这里插入图片描述
这是因为在编译msys2 Mingw在编译GCC时,是没有打开–enable-nls开关的
在这里插入图片描述
为了让其可以显示中文,可以尝试自己编译GCC。

  1. 首先从https://github.com/msys2/MINGW-packages下载mingw-w64-gcc目录中的所有文件,放到一个目录mingw-w64-gcc中或者其它目录中,但是路径中不能包含中文。

  2. 修改PKGBUILD文件,将–disable-nls改为–enable-nls:
    在这里插入图片描述
    并把

#cp share/locale/* ${pkgdir}${MINGW_PREFIX}/share/locale/

前面的#去掉并加上-r参数,如果没有去掉,后面就需要手动复制。

在这里插入图片描述

  1. 安装base-devel包
    为了让安装一次成功,先安装base-devel包,以保证需要的程序都存在。
pacman -S base-devel
  1. 检查msys2系统中的make指令是使用的哪一个,一定要确保使用的msys2系统的make,即/usr/bin/make,而不能使用mingw中的make(Mingw中本来也没有make.exe,而只有mingw32-make.exe,但有时候为了方便,所以可能改为make.exe),不然会报莫名其妙的错误,这是因为GCC在configure时生成的不是Mingw的Makefile格式。
    在这里插入图片描述

  2. 编译
    Mingw Shell中执行:

MINGW_INSTALLS=mingw64 makepkg-mingw -sLf --skippgpcheck

在这里插入图片描述
开始漫长的编译过程。
在这里插入图片描述
提示:
完成创建:mingw-w64-gcc 10.2.0-1
表示成功编译创建GCC包。
此时可以看到目录下生成的包:
在这里插入图片描述
这里我们只更新gcc包,当然也可以更新其它包。

 pacman -U mingw-w64-x86_64-gcc-10.2.0-1-any.pkg.tar.zst

在这里插入图片描述
现在查看命令行help,可以显示中文了。
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用msys2 mingw64编译gcc 的相关文章

随机推荐

  • 实践:SSDEEP相似度比较

    2020 06 03 其实一开始的时候 我是想看看 他们都是使用什么特征来进行比较 今天下午就想找一些相关的相似度比较的文章 看看有没有相关的实践 然后发现谷歌出来的大量结果都是论文 我是想找一些实际的代码 不过 通过调整关键词到mediu
  • ARM编译器常用的预定义宏

    ARM编译器预定义了许多宏 这些宏提供有关工具链版本号和编译器选项的信息 编译器版本 宏为 ARMCC VERSION 数字形式呈现 使用方法如下 rt kprintf Compiler Version u r n ARMCC VERSIO
  • kudu集群Tablet Server异常:Check failed: _s.ok() Bad status: Service unavailable: Cannot initialize clock

    背景 CDH 6 3 1集群上kudu实例Tablet Server异常无法启动 根据报错信息提示时钟同步问题无法启动Check failed s ok Bad status Service unavailable Cannot initi
  • 串口模拟器VSPD(附VSPD安装包)

    串口通讯想必做硬件开发和软件的人来说都相当了解 以前的电脑 基本标配都包含一个串口 但现在的电脑 基本都没有配置串口了 如果要使用串口的功能 基本就要用一个USB转串口的硬件模块 虚拟串口 虚拟 COM 端口 应该很多人都知道 也就是一种模
  • 设计模式_19 状态模式(含 UML图 和 C++代码)

    设计模式 19 状态模式 19 状态模式 19 1 概念 19 2 结构 19 3 实现 19 3 1 UML图 19 3 2 代码 19 3 3 测试结果 19 4 优缺点 19 4 1 优点 19 4 2 缺点 19 5 使用场景 re
  • Mapper文件注入问题

    Mapper文件注入问题 UserMapper that could not be found 原因分析 解决方案 程序正常运行 但是注入类爆红问题 原因分析 解决方法 UserMapper that could not be found
  • Redirecting functions in shared ELF libraries

    Redirecting functions in shared ELF libraries By Apriorit Inc Anthony Shoumikhin 2 Apr 2010 4 83 13 votes Download elf h
  • 电感的两种模式——DCM和CCM的区别

    DCM断续模式 电流从零开始上升的三角波 CCM连续模式 电流从某一非零值上升的侧梯形波 波形不同 在变压器的初级电流 CCM模式波形为梯形波 而DCM模式为三角波 在变压器的次级整流管波形上 CCM同样为梯形 而DCM模式还是三角波 本质
  • JDK安装以及环境变量配置(操作步骤)

    JDK安装以及环境变量配置 操作步骤 安装包 一 环境准备 Windows10 jdk1 8 0 131 二 下载并安装JDK 安装包下载 三 环境变量配置 1 右键桌面上 我的电脑 gt gt 属性 在弹出的页面上点击 高级系统设置 2
  • C++无穷的表示

    在C 中 有时候会遇到无穷的情形 如何表示无穷 首先 C 每种数据类型都有固定的位数 从而可以用数值位全1来表示最大数据 C 本身也定义了一些这样的常量来供使用 如最大无符号整型数据是UCHAR MAX 十进制数为255 1十六进制数为0x
  • (PPO)近端策略优化学习记录

    PPO 近端策略优化学习记录 proximal policy optimization PPO 是策略梯度方法家族的一员 在PPO被提出来之前 它的哥哥 trust region policy optimization TRPO先被提出 在
  • python学习笔记(二)

    字符串格式化方式 二 Python除了 占位符的方法外 还有另一种高效的格式化语法 具体例子如下 有种JS模板字符串的感觉 通过语法 f 内容 变量 的格式来快速格式化 f的含义是format格式化 ee my name 66kk 3 14
  • Spring框架自学之路——简易入门

    目录 目录 介绍 Spring中的IoC操作 IoC入门案例 Spring的bean管理 配置文件 Bean实例化的方式 Bean标签的常用属性 属性注入 使用有参构造函数注入属性 使用set方法注入属性 注入对象类型属性 p名称空间注入属
  • selenium爬取京东商品信息

    开始编写代码之前你应了解ajax 和python基础语法和库 知道异步加载 熟悉html js 本人ide用的是vscode 浏览器是chrome python3 7 主要用到了selenium自动化测试工具 一 先看效果 这里以 手机 为
  • C语言---数据结构实验---哈夫曼树及哈夫曼编码的算法实现---图的基本操作

    文章目录 写在前面 哈夫曼树及哈夫曼编码的算法实现 实验内容 代码实现 图的基本操作 实验内容 代码实现 写在前面 本篇实验代码非本人写 代码源自外部 经调试解决了部分warning和error后在本地vs上可以正常运行 如有运行失败可换至
  • addr2line objdump命令使用方法

    如果是 的 CMakeList txt 编译的时候需要加上一下选项 才可以生产 版本 可以使用addr2line 定位问题 catkin make DCMAKE BUILD TYPE debug DCATKIN WHITELIST PACK
  • STM32定时器-输入捕获

    定时器 输入捕获 输入捕获工作过程 一句话总结工作过程 通过检测TIMx CHx上的边沿信号 在边沿信号发生跳变 比如上升沿 下降沿 的时候 将当前定时器的值 TIMx CNT 存放到对应的捕获 比较寄存器 TIMxCCRx 里面 完成一次
  • 股票数据预处理

    数据导入 提示 注意是csv 还是xlsx文件 本文导入中证100指数 import pandas as pd data pd read excel data CSI100 xls dtype 股票代码 Stkcd str 注意设置代码格式
  • OSI和TCP/IP

    OSI和TCP IP是两种不同的计算机网络协议体系 OSI协议体系 即开放式系统互联通信参考模型 Open Systems Interconnection 是一种抽象的理论网络体系结构 由国际标准化组织 ISO 制定 这个体系结构包括七层
  • 使用msys2 mingw64编译gcc

    我们在msys2中使用pacman安装的GCC默认是不能显示中文帮助的 而Linux下是可以显示中文的 这是因为在编译msys2 Mingw在编译GCC时 是没有打开 enable nls开关的 为了让其可以显示中文 可以尝试自己编译GCC