GCC入门

    xiaoxiao2021-03-25  7

    GCC的常识

    1、 gcc的全称: GNU C Compiler ,是GNU的一款编译器

    2、 gcc通过后缀名来区别输入文件的类型;

    常用文件类型:.

    c C语言源代码文件

    .C/.cc C++源代码文件

    .h 头文件(head也即include)

    .i 已经预处理过的C源代码文件 //预处理:完成头文件和宏定义的展开

    .ii 已经预处理过的C++源代码文件

    .s 汇编语言的源代码

    .S 预编译的汇编语言源代码文件

    .o 编译后的目标文件object

    GCC基本用法

    1、 gcc编译程序分为四个阶段产生可执行程序:

    Pre-Processing 预处理

    gcc -E hello.c -o hello.i //完成头文件和宏定义的展开,生成hello.i预处理文件

    Compiling 编译

    gcc -S hello.i //生成汇编代码,生成hello.s的汇编文件

    Assembling 汇编

    gcc -c hello.s //生成二进制目标文件,生成hello.o文件

    Linking 链接

    gcc hello.o -o hello //链接相关库,生成可执行文件hello,没有后缀

    注:一般生成可执行程序,可以直接 : gcc hello.c -o hello

    运行该可执行程序: ./hello

    2、使用方法:

    gcc +要编译的文件+-o+编译后生成的文件名 注:-o也即是output_filename,是指定编译后生成的文件名,

    不是编译选项,如果没指定则默认生成a.out可执行文件

    eg: gcc hello.c -o hello //将hello.c编译链接成可执行文件hello

    gcc +[编译选项]+要编译的文件+-o+编译后生成的文件名

    常用选项:gcc -c hello.c //-c只编译,不链接成可执行文件,生成 hello.o 的目标文件

    gcc -O hello.c //-O对程序进行优化,使生成的可执行文件执行效率提高

    gcc -O2 hello.c //-O2比-O更好的优化,是生成的可执行文件效率更高

    执行方法: ./hello //执行当前目录下的可执行文件,./表示当前目录,要执行其他目录的可执行文件,输入该文件的路径即可

    测试执行速度:time ./hello //可以测试优化后的可执行文件的执行速度

    转载请注明原文地址: https://ju.6miu.com/read-200220.html

    最新回复(0)