欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux 下C编译和运行过程

程序员文章站 2022-03-03 22:31:07
...

1.预处理阶段

gcc -E -o example.i example.c

将声明在头文件中的内容加到生成的.i文件中

2.编译阶段

gcc -S -o example.s example.i

将.i文件内容编译成汇编语言后生成.s文件

3.汇编阶段

gcc -o example.o -c example.c

将.s文件内容汇编成机器语言后生成.o文件

4.链接阶段

gcc -o example example.o

将.o文件链接生成可执行文件

静态库的创建

ar rcs lib库文件名.a 目标文件1.o 目标文件2.o....目标文件n.o

静态库使用

gcc -o 可执行文件 -ldir 调用者的C源文件 -Ldir -l库文件名

动态库的创建

gcc -shared -fPCI -o lib库文件名.so 目标文件1.o.....

动态库的使用

gcc -o 可执行文件 -ldir 调用者的C源文件 -Ldir -l库文件名