[迁移] makefile 的一个例子

声明:因网易博客将关闭,移到此

/include/test.h

/src/test.cpp

main.cpp

Makefile

-----------------------------------------------------------------

test.h

#ifndef __TEST_H__

#define __TEST_H__

#include<iostream>

#include<string.h>

using namespace std;

class test

{

 public:

   test();

  virtual ~test();

 void echo();

};

#endif //__TEST_H__

-----------------------------------------------------------------

test.cpp

#include "test.h"

test::test(){}

test::~test(){}

test::echo(){cout<<"test::echo()"<<endl;}

-----------------------------------------------------------------

main.cpp

#include "test.h"

int main()

{

 test a;

 a.echo();

 return 0;

}

-----------------------------------------------------------------

Makefile

CXX=g++

FLAGS=-Wall -o2 -g

EXE=main

objects=test.o main.o

vapth %.cpp src

vapth %.h include

all:$(EXE)

$(EXE):$(objects)

   $(CXX) $(FLAGS) -o $@ $(objects)

$(objects):%.o:%.cpp

  $(CXX) $(FLAGS) -c $< -o $@

clean:

   rm $(objects) $(EXE)

-----------------------------------------------------------------

# make main.cpp
CXX=g++
FLAGS=-Wall -O2 -g
EXE=main
EXEOBJ=main.o
objects=test.o

vpath %.cpp src
vpath %.h include

all:$(EXE)
$(EXE):$(objects) $(EXEOBJ)
 $(CXX) $(FLAGS) -o $@ $(objects) $(EXEOBJ)
$(EXEOBJ):$(EXE).cpp test.h
 $(CXX) $(FLAGS) -c $< -o $@ -I include
$(objects):%.o:%.cpp %.h
 $(CXX) $(FLAGS) -c $< -o $@ -I include
clean:
 rm $(objects) $(EXE)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值