gcc 编译程序

GCC

选项选项描述
-x language指定使用的语言(C、C++或汇编)
-c只对文件进行便也和汇编,但不进行连接
-S只对文件进行编译,但不汇编和连接
-E只对文件进行预处理,但不编译汇编及连接
-o [file1] file2将文件 file2 编译成可执行文件 file1
-I dir在头文件的搜索路径中添加 dir 目录
-L dir在库文件的搜索路径中添加 dir 目录
-w禁止警告信息
-pedantic严格要求符合 ANCI 标准
-Wall显示所有警告
-g加入调试信息以便于调试,GNU 调试器可利用该信息
-O0不进行优化处理
-O(-O1)对编译的代码进行优化
-O2比 -O 更高级别的优化
-O3更高级别的优化
-v显示版本
-ansi只支持 ANSI 标准的 c 语法,该选项将禁止 GUN C 的某些特色,例如 asm 或 typeof关键字
-pedantic允许发出 ANSI C 标准所列的全部警告信息
-pedantic-error允许发出 ANSI C 标准所列的全部错误信息
-werror把所有的警告信息转化为错误信息,并在告警发生时终止编译过程
-fPIC生成使用相对地址与位置无关的目标代码.然后通常使用 gcc 的-static 选项从该 PIC 目标文件生成动态库文件
-static使用静态链接的方式
-shared
  1. 可以生成动态库文件
  2. 进行动态编译,尽可能地链接动态库,只有当没有动态库时,才会链接同名的静态库文件(默认选项)

gcc编译流流程

  1. 预处理器 cpp 完成宏的求值、条件编译以及一些需要吧代码传递到编译器前的工作.
  2. 编译器 gcc gcc -S 将源代码编译成汇编代码
  3. GNU 汇编器 as as 处理汇编代码,产生目标文件(二进制文件)
  4. GNU 连接器 ld ld 将程序的各个模块组合起来产生最后的可执行文件
  5. 文件处理器 ar 可以用 ar 建立静态库,把几个小文件组成一个大文件.
  6. 库显示 ldd 可以显示一个可之心文件运行时需要的一些共享库.是 Library Dependency Display 的缩写

 

 


 

gcc :

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值