Linux下的makefile相关内容

基本格式:

target(目标生成文件):prerequisites(依赖文件)

(tab) 命令语句

clean:

例题:需求描述
编写程序实现两个整数相加、相减操作
要求
1、文件分布(xiangjian.c xiangjian.h xiangjia.c xiangjia.h main.c)
2、编写makefile进行编译
步骤:

1.在虚拟机上建立一个文件夹xiangjiajian

2.在xiangjiajian中分别建立xiangjia和xiangjian文件夹

3.在xiangjia中建立xiangjia.c和xiangjia.h和xiangjia.mk,xiangjian文件夹之中相同

4.在xiangjiajian中建立一个main.c(主函数)再建立一个makefile。

5.调用。

xiangjia.c:

#include<stdio.h>
int xiangjia(int a,int b)
{
        return a+b;
}

xiangjia.h

#include<stdio.h>
int xiangjia(int a,int b);
xiangjia.mk

xiangjia.o:xiangjia/xiangjia.c xiangjia/xiangjia.h
        gcc -c xiangjia/xiangjia.c -o xiangjia.o
xiangjian.c

#include<stdio.h>
int xiangjian(int c,int d)
{
        return c-d;
}
xiangjian.h

#include<stdio.h>
int xiangjian(int c,int d);

xiangjian.mk

xiangjian.o:xiangjian/xiangjian.c xiangjian/xiangjian.h
        gcc -c xiangjian/xiangjian.c -o xiangjian.o

main.c

#include<stdio.h>
#include"xiangjia/xiangjia.h"
#include"xiangjian/xiangjian.h"
int main()
{
        int x,y;
        x=xiangjia(1,2);
        y=xiangjian(2,1);
        printf("1+2=%d\n2-1=%d\n",x,y);
        return 0;
}

makefile

all: main
include xiangjia/xiangjia.mk
include xiangjian/xiangjian.mk
main: main.o xiangjia.o xiangjian.o
        gcc *.o -o main
main.o: main.c
        gcc -c main.c -o main.o
clean:
        rm -f *.o main 





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值