GCC简单入门

导语

GCC是GNU Compiler Collection的缩写,包含gcc、g++等编译工具。这个工具不仅包含编译器,还包含其他工具集,例如ar、nm等。今天简单的讲一讲这个工具。

简介

GCC能编译C、C++、Objective-C、Fortran、Java、Ada等语言。GCC可以在不同的硬件平台编译,即支持交叉编译。
GCC的c编译器是gcc,其命令格式为

Usage:gcc [options] file...

GCC支持默认拓展名策略,下表是GCC下默认文件拓展名的含义。

GCC常用的编译器有

头文件和库文件的默认路径是

单个文件编译成执行文件

$gcc hello.c

会在当前目录下自动生成文件名为a.out的可执行文件。
如果想要指定生成的可执行文件名,啧加一个-o参数

$gcc -o hello hello.c

此时就会出现一个叫hello的可执行文件。

编译生成目标文件

编译的过程分为如图所示

源文件、目标文件和可执行文件是常用的三个词。源文件即是存放源代码的文件。目标文件是指经过了编译器的编译生成的二进制机器码,但是目标文件的一些函数过程没有相关的指示和说明,所以一般不可执行。可执行文件是目标文件与相关的库连接后的文件,它是可以执行的。
单个文件编译成可执行文件时,中间文件只在编译的过程中临时存在,在编译完成生成可执行文件之后,会删除掉目标文件。然而在大型项目中目标文件需要保留用于不同的编译目标。

$gcc -c (-o hello.o) hello.c

GCC使用一个-c的

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值