编写程序实现两个整数相加、相减操作
1、文件分布(xiangjian.cxiangjian.hxiangjia.cxiangjia.hmain.c)
2、编写makefile进行编译
3、将相加功能和相减功能生成静态库(.a)和动态库(.so)
此时我的makefile文件内容为:
all:math libmymath1.a libmymath2.so
math:main.c ./mymath/xiangjia.c ./mymath/xiangjian.c
gcc main.c ./mymath/xiangjia.c ./mymath/xiangjian.c -o math -I ./mymath
libmymath1.a:./mymath/xiangjia.c ./mymath/xiangjian.c
ar cr libmymath1.a ./mymath/xiangjia.c ./mymath/xiangjian.c
libmymath2.so:./mymath/xiangjia.o ./mymath/xiangjian.o
gcc -c ./mymath/xiangjia.c -o xiangjia.o && gcc -c ./mymath/xiangjian.c -o xiangjian.o && \
gcc -shared -fPCI -o libmymath2.so ./mymath/xiangjia.o ./mymath/xiangjian.o
因为要生成三个不同的文件,所以加了一个all目标文件,包含三个文件的依赖,在生成静态库的时候,直接用*.c文件生成即可,但是在生成动态库的时候要用*.o文件生成,而且要注意,不能同时生成两个*.o文件;