gcc/g++ 的参数总结(二)

本文详细介绍了GCC编译器的工作流程及其常用参数,包括预处理、编译、汇编和链接等步骤,并深入探讨了-l和-L参数的具体用法。

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

gcc 参数总结

如果是 c++,直接将 gcc 改为 g++ 即可。

1. gcc 编译流程

  • 预处理,Pre-Processing:gcc -E test.c -o test.i //.i文件
  • 编译,Compiling:gcc -S test.i -o test.s //.s文件
  • 汇编,Assembling:gcc -c test.s -o test.o //.o文件
  • 链接,Linking:gcc test.o -o test //bin文件

2. 编译

  • gcc -c test.c //.o文件,汇编

    • -c:只编译,不链接,生成 .o 文件;
    $ gcc -Wall -c file1.c file2.c file3.c

    不用指定 .o 文件名,会默认生成 file1.o, file2.o, file3.o

  • gcc -o test test.c //bin可执行文件
  • gcc test.c //a.out可执行文件

3. 常用参数

GCC/G++编译参数含义

  • -l 参数和-L参数

    • l 参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?
      就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的头lib和尾.so去掉就是库名(gcc xxx.c -lm( 动态数学库))

    • -D

      • -DMACRO 以字符串“1”定义 MACRO 宏。#define macro
      • -DMACRO=DEFN 以字符串“DEFN”定义 MACRO 宏。
        • #define MACRO DEFN

转载于:https://www.cnblogs.com/mtcnn/p/9422158.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值