zoukankan      html  css  js  c++  java
  • gcc/g++ 编译C/C++代码

    摘要:本文介绍了在windows下编译c/c++代码的完整流程


    1.安装gcc/g++编译器

    官网下载地址为:https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/installer/mingw-w64-install.exe/download?use_mirror=nchc

    下载安装之后配置一下环境路径:

    这里写图片描述

    接下来测试一下是否正常,在命令行输入:

    gcc -v

    如果输出gcc 的信息而不是提示找不到则安装成功,否则,检查安装路径!

    2.编译

    首先准备一份测试代码,命名为hello.c

    //gcc 编译测试代码
    #include<stdio.h>
    int main(){
        printf("Hello gcc!");
    }

    编译可分为四个阶段:

    • 预处理:编译器将c程序的头文件包含进来,及进行宏替换

      gcc -E hello.c -o hello.i
    • 编译:这个阶段编译器主要做词法分析、语法分析、语义分析等,在检查无错误后后,把代码翻译成汇编语言,编译器(ccl )将文本文件hello.i 翻译成文本文件hello.s, 它包含一个汇编语言程序。汇编语言程序中的每条语句都以一种标准的文本格式描述了一条低级机器语言指令。

      gcc -S hello.i -o hello.s
    • 汇编:把编译阶段生成的.s 文件转换为二进制目标代码。汇编器(as)将hello.s翻译成机器语言指令,把这些指令打包成可重定位目标程序的格式, 并将结果保存在目标文件hello.o中。hello.o文件是一个二进制文件,它的字节编码是机器语言。

      gcc -c hello.s -o hello.o
    • 链接:把obj文件链接为可执行的文件:链接器(ld)负责.o文件的并入。结果就是hello文件,它是一个课执行的目标文件,可以加载到存储器后由系统调用

      gcc hello.o -o hello

    当然,也可以直接生成目标文件:

    gcc hello.c -o hello

    或者:

    gcc hello.c

    此时目录下会有hello.exe 文件,在命令行输入:hello.exe 运行即可!

    注意:如果是C++代码,则调用g++ 编译即可,语法相同。

  • 相关阅读:
    POJ2115解题报告【拓展欧几里得模板题】
    Linux安装jdk快速流程
    SpringBoot+Vue项目多文件上传同时上传其他参数
    Maven
    浏览器常用快捷键
    IDEA从GitHub仓库拉取代码
    Address already in use: bind
    Vue集成echarts插件
    致自己
    Flask_FileUpload
  • 原文地址:https://www.cnblogs.com/yczha/p/13160249.html
Copyright © 2011-2022 走看看