linux C开发环境教程

60 阅读1分钟

开发环境搭建

编辑器

编译器

image.png

// 1.预编译命令
gcc -E hello.c -o hello.i
// 2.编译
gcc -S hello.i -o hello.s
// 3.汇编
gcc -c hello.s -o hello.o
// 4.链接
gcc hello.o -o hello

调试器

目录结构规范

- bin 打包好的可执行二进制文件目录
- include 头文件目录
- lib 第三方的二进制代码
- src 源代码目录
- main.c 入口文件
- Makefile makefie文件 

Makefile

# 虚拟目录 clean
.PHONY: clean

// 输入文件是main.o 和 静态库文件my_max.a
all: main.o libmy_max.a
# 把main.o链接为a.out,并输出到bin目录中
# -l静态链接库的名称为my_max
# -L把lib目录加入到静态链接库的搜索路径中
	gcc  main.o -o ./bin/a.out -l my_max -L ./lib

# 引用了静态连接库就不需要单独再引用 max.o
# all: main.o ./src/max.o
# 	gcc ./src/max.o main.o -o ./bin/a.out
# 把main.o打包成my_max.a
libmy_max.a: ./src/max.o
	ar rcs ./lib/libmy_max.a ./src/max.o
# 把max.c汇编成max.o
# -I 指定头文件为include目录
max.o: ./src/max.c
	gcc -c  ./src/max.c -o ./src/max.o -I ./include

# -I 表示引入的头文件位置
main.o: main.c
	gcc -c  main.c -o main.o -I ./include

clean:
	rm ./bin/a.out main.o ./src/max.o