Makefile模板之 sub.c main.c

arm-linux-objcopy被用来复制一个目标文件的内容到另一个文件中,可以使用不同于源文件的格式来输出目的文件,即可以进行格式转换。用来将ELF格式的可执行文件转换为二进制文件。

arm-linux-objdump用于显示二进制文件信息,常用来查看反汇编代码。

src := $(shell ls *.c)
objs := $(patsubst %.c, %.o, $(src))


target: $(objs)
	gcc -o $@ $^
%.o:%.c
	gcc -c -o $@ $<
clean:
	rm -rf target *.o

_________________________________________________________________________________________

sub.c / sub.h /main.c三个文件:
gcc -c sub.c -o sub.o
gcc -c main.c -o main.o
gcc main.o sub.o -o test
./test

不想提供源码时,可以编译成静态库:
gcc -c sub.c -o sub.o
gcc -shared sub.o -o sub.a
gcc main.o -o test ./sub.a

———————————————————————————————————————————————————

 汇编  gcc -S sub.c -o sub.s 
预处理 gcc -E sub.c 

上一篇:如何确保API在企业的安全使用(二)


下一篇:thinkphp-FOREACH标签3