安装MinGW-64 (学习笔记)

2023-11-06

安装MinGW-64

MinGW-w64是windows版的GCC编译器(c/c++编译调试)

下载官网地址

往下拉页面看到下图所示
在这里插入图片描述

两种安装方式

方式一,在线安装

安装界面

Version(GCC版本):
如果没有特殊的需求,一般选择最高的版本号即可。

Architecture(选择电脑系统架构):
根据电脑系统选择。i686(32位),x86_64(64位)。

(网上查到的信息:i386对应的是32位系统、而i686是i386的一个子集;
x86_64主要是64位系统)

Threads(选择操作系统接口协议)
选项win32: 针对开发 Windows 程序
选择 posix 。开发 Linux、Unix、Mac OS 等其他操作系统下的程序

Exception(异常处理模型)
选择异常处理模型(64位)
说明:如果选择了 64位,则这里有两个异常处理模型提供选择,seh 是新发明的,而 sjlj 则是古老的。seh 性能比较好,但不支持 32位。 sjlj 稳定性好,支持 32位。

选择异常处理模型(32位)
说明:选择了 32位 后,则可以用 dwarf 和 sjlj 两种异常处理模型。dwarf 的性能要优于 sjlj ,但它不支持 64位 。
操作:建议选择 dwarf 。

安装

方式二,解压包安装

解压解压包,在环境变量path设置bin文件夹路径

在这里插入图片描述
例如:

在这里插入图片描述

编译

基本语法

gcc [选项] 准备编译的文件 [选项] [目标文件]

基本编译:
1、预处理(win系统不支持)
gcc -E test.c -o test.i 或 gcc -E test.c

可以输出test.i文件中存放着test.c经预处理之后的代码。打开test.i文件,看一看,就明白了。后面那条指令,是直接在命令行窗口中输出预处理后的代码.

gcc的-E选项,可以让编译器在预处理后停止,并输出预处理结果。在本例中,预处理结果就是将stdio.h 文件中的内容插入到test.c中了。

2、编译为汇编代码(Compilation)
预处理之后,可直接对生成的test.i文件编译,生成汇编代码:
gcc -S test.i -o test.s
gcc的-S选项,表示在程序编译期间,在生成汇编代码后,停止,-o输出汇编代码文件。

3、汇编(Assembly)
对于上一小节中生成的汇编代码文件test.s,gas汇编器负责将其编译为目标文件,如下:
gcc -c test.s -o test.o

4、连接(Linking)
gcc连接器是gas提供的,负责将程序的目标文件与所需的所有附加的目标文件连接起来,最终生成可执行文件。附加的目标文件包括静态连接库和动态连接库。

对于上一小节中生成的test.o,将其与C标准输入输出库进行连接,最终生成程序test
gcc test.o -o test

上述编译过程的四个阶段,即预处理(也称预编译,Preprocessing)、编译(Compilation)、汇编 (Assembly)和连接(Linking)。
可使用如下命令一次完成编译过程。
gcc test.c -o test

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

安装MinGW-64 (学习笔记) 的相关文章

随机推荐

  • Linux vim的常见基本操作

    目录 vim是一款多模式的编辑器 命令模式下 用小写英文字母 h j k l 分别控制光标左 下 上 右移一格 gg 定位到代码第一行 n shift g 定位到任意一行 最后一行 移动到光标所在行的结尾 移动到光标所在行的开头 w 以单词
  • Linux之 Shell分析日志文件

    文章目录 前言 1 查看有多少个IP访问及某一个页面被访问的次数 2 查看每一个IP访问了多少个页面及个IP访问的页面数进行从小到大排序 3 查看某一个IP访问了哪些页面及去掉搜索引擎统计的页面 4 查看2015年8月16日14时这一个小时
  • React Hook的用法: Ref + useMemo + 自定义Hook(三)

    React Hook的用法 Ref Hook 这个Hook的作用是可以通过他来获取到Dom元素节点 使用起来非常方便 关键代码如下 const xxxEle useRef initialValue 1 useRef返回一个ref变量 并接受
  • U盘怎么重装系统到电脑上

    当今社会 电脑可以说是融入了我们的生活 每个工作职能都需要使用到电脑来录入信息 电脑既然这么重要 但还是偶然出现些小故障 我们都可以通过u盘来重装系统拯救电脑 更多系统教程尽在小白系统重装官网 1 注 准备好一个8g以上u盘 一台能上网的电
  • Blender里的三种绑定:(一)主从绑定

    文章目录 Blender里的三种绑定 主从绑定 进行物体绑定 进行顶点绑定 解除绑定 保持变换 无反向 进行晶格绑定 Blender里的三种绑定 1 Blender中一共有三种绑定模式 分别是 主从绑定 约束 骨骼 主从绑定 1 主从绑定即
  • python下载安装过程——超详细!

    Python 下载安装 文末附python全套学习资料 安装python分三个步骤 1 下载python 2 安装python 3 检查是否安装成功 1 下载Python 1 python下载地址https www python org d
  • python使用pycrawlers批量下载huggingface上的模型与数据文件

    文章目录 前言 一 git下载的例子 二 pycrawlers的使用 1 安装 2 批量下载 3 单个下载 4 示例 5 后台下载 6 断点续传 总结 前言 现在从下载huggingface的文件一般使用git 下载单个小型模型的文件使用g
  • Linux系统管理:虚拟机Alpine Linux安装

    目录 一 理论 1 Alpine Linux 二 实验 1 Alpine Linux安装 三 问题 1 Alpine Linux 缺少VIM命令 2 Alpine Linux SSH连接不上 3 Alpine Linux IP配置 四 总结
  • Python3实现向指定邮箱发送邮件(支持附件文件、图片等)

    Background 最近业务需求需要把生成的月报定时发送到指定邮箱 直接在网上找了相关经验改巴改巴给实现了 测试可以直接使用 生产是我从MySQL数据库获取文件信息和邮箱等使用的 程序中的注释相当清楚了 定时是通过shell脚本实现的 获
  • python应用(3)svm模型预测股票涨跌

    最近接了一个私活 指导学妹完成毕业设计 核心思想就是利用SVM模型来预测股票涨跌 并完成策略构建 自动化选择最优秀的股票进行资产配置 在做这个项目的过程中 我体会到想成为一个合格的数据分析或者数据挖掘工程师不仅技术要过关 还需要了解所要挖掘
  • kubernetes搭建GitLab并提供本地域名服务及业务微服务接口集成GitLab

    目录 搭建GitLab服务 镜像准备 数据卷脚本 部署脚本 服务脚本 路由脚本 登录及配置 GitLab接口及业务微服务上传代码 GitLab接口注意事项 业务微服务上传代码注意事项 搭建GitLab服务 业务管理平台需要将本地的代码上传并
  • mysql中alter 添加字段,添加默认值,删除字段,删除默认值

    需求 为已有添加字段 示例 1 查看先有表结构 2 为t test表添加字段nickname 语法 ALTER TABLE 表名 ADD 字段名字段类型 ALTER TABLE t test ADD nickname varchar 25
  • 用jmeter进行http接口测试详解

    前言 本文主要针对http接口进行测试 使用Jmeter工具实现 Jmter工具设计之初是用于做性能测试的 它在实现对各种接口的调用方面已经做的比较成熟 因此 本次直接使用Jmeter工具来完成对Http接口的测试 同时 我也为大家准备了一
  • KY275 对称平方数

    KY275 对称平方数 for i in range 1 256 square str i i if square square 1 print i
  • 批量执行定时任务_执行批量维护任务安全策略

    批量执行定时任务 介绍 Introduction You may see it more commonly referenced as Database Instance File Initialization DIFI If you ar
  • 接口测试工具——Postman使用详解

    目录 Postman简介 Postman主界面 菜单栏 工具栏 请求管理区 环境管理区 请求设计区 发送请求 发送GET请求 Postman发送GET请求 发送表单格式POST请求 发送JSON格式POST请求 发送XML格式POST请求
  • “invalid method declaration; return type required“

    kinda 在书面英语中使用 表示非正式发音时的 kind of 主要用作为副词 作副词时译为 有点 有几分 常用搭配 kinda like https blog csdn net qiansg123 article details 801
  • Visual studio 2019 之 如何创建一个C++项目?

    1 打开软件 进入下面的界面 点击创建新项目 2 选择空项目 点击下一步 备注 这里的选项和安装软件时 你所安装的组件有关 3 配置新项目 编辑一个自己的项目名字 选择一个保存的文件夹 然后点击右下角的创建 4 这就是项目创建后的界面 左侧
  • Python 第三方模块 数据分析 Pandas模块 时间对象与时间序列

    一 日期和时间数据类型 1 相关模块 参见 Python 内置模块 时间 部分 2 时间戳的Null值 Pandas中用pd NaT Not a Time 表示时间戳数据的Null值 gt gt gt pd NaT NaT gt gt gt
  • 安装MinGW-64 (学习笔记)

    安装MinGW 64 MinGW w64是windows版的GCC编译器 c c 编译调试 下载官网地址 往下拉页面看到下图所示 两种安装方式 方式一 在线安装 Version GCC版本 如果没有特殊的需求 一般选择最高的版本号即可 Ar