【Linux学习笔记】gcc编译单个文件

本文介绍了Linux下使用GCC编译单个C语言源文件的过程,包括预编译、编译、汇编和链接四个阶段。通过gcc命令,我们可以生成目标文件或直接得到可执行文件。默认生成的可执行文件名为a.out,但可以通过-o选项指定文件名。此外,还讲述了如何生成目标文件以及一次性编译多个源文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 编译程序的基本知识
    GCC编译器对程序的编译如图所示,分为四个阶段:预编译,编译和优化,汇编和链接。

    这里写图片描述

    源文件:存放可编辑代码的文件,如存放C,C++和汇编语言的文件。
    目标文件:经过编译器编译生成的CPU可识别的二进制代码,但是目标文件一般不能执行,因为其中有一些函数过程没有相关的指示和说明。
    可执行文件:目标文件与相关的库链接后的文件它是可以执行的。

    预编译过程将程序引用的头文件包含进源代码中,并对一些宏进行替换。
    编译过程将用户可识别的语言翻译成一组处理器可识别的操作码,生成目标文件,通常翻译成汇编语言,而汇编语言和机器操作码之间是一种一对一的关系。
    所有目标文件必须用某种方式组合起来才能运行,这就是链接的作用。目标文件中通长仅解析了文件内部的变量和函数,对于引用的函数和变量还没有解析,这需要将已编写好的目标文件引用进来,将没有解析的变量和函数进行解析,通常引用的目标是库。链接完成后会生成可执行文件。

  2. 单个文件编译成可执行文件
    在Linux下用GCC编译单个文件直接使用gcc命令后面加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值