示例:
1. 手工编译
gcc -o appexp src/main.c src/app.c src/lib.c src/bar.c
分解为
gcc -c -o main.o src/main.c
gcc -c -o app.o src/app.c
gcc -c -o lib.o src/lib.c
gcc -c -o bar.o src/bar.c
gcc -o appexp main.o app.o lib.o bar.o
2. buildit脚本
#!/bin/bash # Build the example project gcc -c -o main.o src/main.c gcc -c -o app.o src/app.c gcc -c -o lib.o src/lib.c gcc -c -o bar.o src/bar.c gcc -o appexp main.o app.o lib.o bar.o
3. 简单的Makefile文件
appexp: main.o app.o bar.o lib.o
gcc -o appexp main.o app.o bar.o lib.o
main.o: src/main.c src/lib.h src/app.h
gcc -c -o main.o src/main.c
app.o: src/app.c src/lib.h src/app.h
gcc -c -o app.o src/app.c
bar.o: src/bar.c src/lib.h
gcc -c -o bar.o src/bar.c
lib.o: src/lib.c src/lib.h
gcc -c -o lib.o src/lib.c
Makefile变量
...
模式匹配规则
...
自动依赖跟踪
...
本文详细解析了C语言项目的编译过程,包括手工编译、使用buildit脚本和简单的Makefile文件实现自动构建。介绍了如何通过gcc命令进行源文件编译,以及如何利用Makefile进行依赖管理和构建过程的自动化。
1058

被折叠的 条评论
为什么被折叠?



