C项目的编译
最近需要跑一个C的项目,C项目编译过程:
编译过程
预处理——编译——汇编——链接
只编译不链接,生成.o
gcc -c main.c
进行链接
gcc -o main main.o
多个文件编译
一个.c文件中用到了其他.c的内容
编译时需要注意顺序,一般先把多个.c文件编译为.o文件,然后再gcc -o组合起来。

但是文件多的时候,就需要makefile了。
找不到头文件的目录
gcc -I指定
静态链接库
把一堆.o文件组织到一起形成.a文件
命名:lib+库名+.a
ar命令生成静态链接库
使用静态链接库

链接时把库加后面
动态链接库
Windows:.dll文件;linux:.so文件

Makefile
当.c文件特别多时,gcc编译显得吃力。makefile可以帮忙。
Cmake
当makefile也过于复杂时,引出cmake工具,帮我们生成makefile。
C项目的编译
http://example.com/2024/07/29/C/gcc/