美文网首页
gcc使用小结

gcc使用小结

作者: 莹小武 | 来源:发表于2016-12-18 22:55 被阅读183次

gcc是GNU C Compiler的缩写,由GNU推出的多平台编译器,可以编译C, C++, Object C等代码。gcc对C语言的处理分为四个步骤:

预处理,gcc对C语言源文件包含的头文件和宏定义进行处理,如#define, #include, #if;

编译,gcc检查代码的语法是否有错,并将代码翻译成汇编语言,生成以.s为扩展名的汇编代码文件;

汇编,gcc用编译生成的汇编语言生成目标文件,目标文件以.o为扩展名;

链接,gcc将生成的目标文件链接合成可执行的文件,同时也会把调用的系统函数链接到可执行的文件中。

gcc的使用格式如下:

gcc [选项] 文件

gcc使用实例:

首先用vim新建一个名为hello.c的源文件,并输入如下简单代码:

hello.c文件中的代码

然后在终端中输入如下命令:

gcc hello.c -o hello

该命令中,hello.c是待编译的文件,-o hello是生成名为hello的可执行文件。执行完该命令后,再执行ls命令可以看到当前目录下有hello文件生成

hello文件执行的结果

./hello 表示在当前目录下执行hello文件,该文件的执行结果正是hello.c文件中的代码执行的结果。

现在把hello和hello.c~文件删除,执行如下命令:

gcc hello.c

那么在当前目录下生成的文件为a.out

gcc选项省略的执行结果

我们可以看到如果把选项和可执行文件名省略掉,gcc会默认可执行文件名为a.out。./a.out 命令的执行结果和上述./hello命令的执行结果一致。

相关文章

  • gcc使用小结

    gcc是GNU C Compiler的缩写,由GNU推出的多平台编译器,可以编译C, C++, Object C等...

  • clickhouse编译 18.16 报错

    原因: 这个版本需要使用 gcc-8 或者 gcc-7, 而编译的时候使用的时gcc-9

  • 1.准备

    gcc使用 1.gcc编译流程:1)预处理:gcc -E2)编译:gcc -S3)汇编:gcc -c4)链接:没参...

  • 2018-05-02 centos6 编译 bazel-0.13

    gcc-5.3 编译一个gcc-5.3,并在路径中制定使用gcc-5.3/bin/gcc 修改tools/cpp/...

  • 2018-05-02 centos6 编译 bazel-0.10

    gcc-5.3 编译一个gcc-5.3,并在路径中制定使用gcc-5.3/bin/gcc 修改tools/cpp/...

  • gcc编译命令小结

    写在前面: 在几年前,我是使用c/c++作为主力开发语言。一晃几年过去,现在已投入java开发阵营。今天翻看以前的...

  • 关于gcc

    gcc的文件组成 gcc内部使用的程序: gcc涉及到的头文件 gcc涉及到的库文件 关于库文件的链接顺序 gcc...

  • CentOS6.5安装FastDFS

    1.安装gcc(c语言开发,需要使用gcc编译) 命令:yum install make cmake gcc gc...

  • 安装gcc时,提示 configure: error: no a

    问题原因:系统没有可使用的gcc程序 解决办法:安装一个可使用的gcc

  • 关于C和CPP中同名函数的思考

    首先看一段代码: 使用gcc编译: 使用g++编译: 首先解释一下gcc和g++编译报错原因: gcc编译器默认将...

网友评论

      本文标题:gcc使用小结

      本文链接:https://www.haomeiwen.com/subject/krqzmttx.html