先写一个简单的例子
2010-11-20 16:24
162 查看
我们先在 cygwin 下建立文件夹 test001,再在文件夹 test001 下建立两个 .c 文件,三个 .h 文件。因为我们着重介绍的是 MakeFile,所以文件中几乎没有写代码。只是 math.c 文件中引入了头文件 math.h 和 common.h,main.c 文件中引入了头文件 main.h ,math.h 和 common.h。在 main.c 中写了一个空的 main 函数,如下
#include "common.h"
#include "math.h"
#include "main.h"
int main(void)
{
return 0;
}
如果没有这个main函数,makefile 运行会出错。
下面我们建立我们的 makefile 文件 test001.mk,它的内容如下:
#井号是注释提示符
#执行方式:make -f test001.mk
#我们生成的最终目标是 test.exe
test.exe : main.o math.o #test.exe 依赖于 main.o 和 math.o
#生成 test.exe 的命令,注意有命令那一行的最前面须是 Tab 键,且命令行不能写在最前面
#还有注释也不要写在命令后面,否则会在屏幕上显示出来
cc -o test.exe main.o math.o
math.o : math.c math.h common.h #math.o 依赖于 math.c,math.h,common.h
#生成 math.o 的命令,注意有命令那一行的最前面须是 Tab 键
cc -c math.c
#下面相同,不再写注释
main.o : main.c main.h math.h common.h
cc -c main.c
不要直接从这里拷下来,可以从 http://u.115.com/file/f4ad8d3e76 下载 test001.zip 文件。
在 cygwin 中进入 test001目录,执行命令:make -f test001.mk 看运行结果。
test001 下的 c 文件最终要生成一个 .exe 文件,先简单介绍下 .exe 文件的生成过程,首先在 Linux 下要把每个 .c 文件编译成 .o 文件,再把 .o 文件连接成 .exe 文件,这是基本知识,想详细了解请大家查找相关的资料。
在 makefile 文件中, 井号是注释符号。
首先列出我们要生成的最终目标是 test.exe,它依赖于 main.o 和 math.o 的生成,而 main.o 由 main.c 生成,math.o 由 math.c 生成。这样,makefile 文件的编制过程就是把这些依赖关系列出的过程,希望大家仔细研究。
#include "common.h"
#include "math.h"
#include "main.h"
int main(void)
{
return 0;
}
如果没有这个main函数,makefile 运行会出错。
下面我们建立我们的 makefile 文件 test001.mk,它的内容如下:
#井号是注释提示符
#执行方式:make -f test001.mk
#我们生成的最终目标是 test.exe
test.exe : main.o math.o #test.exe 依赖于 main.o 和 math.o
#生成 test.exe 的命令,注意有命令那一行的最前面须是 Tab 键,且命令行不能写在最前面
#还有注释也不要写在命令后面,否则会在屏幕上显示出来
cc -o test.exe main.o math.o
math.o : math.c math.h common.h #math.o 依赖于 math.c,math.h,common.h
#生成 math.o 的命令,注意有命令那一行的最前面须是 Tab 键
cc -c math.c
#下面相同,不再写注释
main.o : main.c main.h math.h common.h
cc -c main.c
不要直接从这里拷下来,可以从 http://u.115.com/file/f4ad8d3e76 下载 test001.zip 文件。
在 cygwin 中进入 test001目录,执行命令:make -f test001.mk 看运行结果。
test001 下的 c 文件最终要生成一个 .exe 文件,先简单介绍下 .exe 文件的生成过程,首先在 Linux 下要把每个 .c 文件编译成 .o 文件,再把 .o 文件连接成 .exe 文件,这是基本知识,想详细了解请大家查找相关的资料。
在 makefile 文件中, 井号是注释符号。
首先列出我们要生成的最终目标是 test.exe,它依赖于 main.o 和 math.o 的生成,而 main.o 由 main.c 生成,math.o 由 math.c 生成。这样,makefile 文件的编制过程就是把这些依赖关系列出的过程,希望大家仔细研究。
相关文章推荐
- 使用Multiplayer Networking做一个简单的多人游戏例子-3/3(Unity3D开发之二十七)
- 一个简单的EJB例子!!
- 一个简单的C#多线程间同步的例子
- 一个简单的Ant例子
- 一个简单的struts2上传图片的例子
- 一个epoll的简单例子
- 一个使用spring的最简单的例子。
- 使用注解springmvc+spring+mybatis一个简单ajax例子
- 一个简单的framebuffer的显示使用例子
- 一个简单的优化例子(锁问题)
- 一个简单的调用脚本文件的例子
- Python网络爬虫 - 一个简单的爬虫例子
- java 的工厂模型(一个简单的例子来说明)
- 用装饰模式优化代码的一个简单例子
- 一个简单的网页编写的例子
- ibaits的一个简单的完整的例子
- msdn的一个例子 移动就是这么简单..
- 【Python】一个简单的例子
- 用 jQchart 制作图表的一个最简单的例子
- 一步一步从入门到精通(一)建立一个简单入门的例子