GCC 学习记录

抽空学习了Linux GCC,以前都是搞visual c++和java开发,很少关注这块,只听说过make,cmake...

 

小布老师视频:https://www.bilibili.com/video/av82377250?p=5

 

编译过程:

步骤1:预处理(处理宏)  Preprocessing(to expand macros)

步骤2:编译(源程序生成汇编语言)  Complication(from source code to assembly)

步骤3:Assembly(汇编语言 到机器码) Assembly(from assembly language to machine code)

步骤4:链接(生成可执行文件)  Linking(to create the final executable)

 

GCC编译Hello world

gcc -Wall hello.c main.c -o  hello.o

 

参数说明:

-Wall:  使用标准的警告

-o: 目标文件输出

-v  打印详细信息

-c 只编译生成目标文件,即不链接  gcc -Wall -c main.c

-L 包含链接库文件路径

-I 指定头文件路径

-l 指定链接哪些库文件

-std指定C语言标准,如-std=c99

-D 宏定义。 对应indef宏定义,预处理使用

-E 只做预处理,不编译

-g 保存debug信息

-OLEVEL  gcc编译优化等级0-3  等级越高会影响后续调试  建议平时用O0,发布时用O2

 

 

C_INCLUDE_PATH  CPLUS_INCLUDE_PATH

LIBRARY_PATH    静态库路径

LD_LIBRARY_PATH  动态库路径

创建Library

 

 

 

告警设置:

 

辅助命令:

ldd :  查看当前文件依赖哪些动态库

file :   查看当前文件的类型

其他的一些工具,没记录了,很难用上,以后用了在看吧

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值