一直对c++有所畏惧。
对于它的学习还处于本科时期的选修课。最近工作中遇到了安卓底层c++实现进程来做清理工作的任务。于是捡起来c++的学习。
makefile一直不知道到底是干嘛的。今天来看下。
makefile内容:
t:b.o my.o
g++ b.o my.o -o t
b.o:b.cpp my.h
g++ -c b.cpp -o b.o
my.o:my.cpp my.h
g++ -c my.cpp -o my.o
clean:
rm -rf *.o t
b.cpp内容:
#include<iostream>
#include<string>
#include"my.h"
using namespace std;
int main(){
cout<<a()<<endl;
return 0;
}
my.h内容:
#include<string>
using namespace std;
string a();
my.cpp内容:
#include<string>
using namespace std;
string a(){
return "hello beauty";
}
上面是demo的代码和makefile文件。
其中makefile中在command之前要有一个tab做分隔。
makefile第一行:指明t依赖两个.o文件,command是g++链接两个.o文件生成t可执行文件
makefile第三行:指明b.o的生成方法,command是g++编译cpp文件
makefile第五行:与第三行相同
makefile第七行:clean,执行make clean 的时候,将执行rm -rf *.o t 命令
此时执行make就会生成可执行文件t。
使用变量和函数可以参考: