makefile文件制作入门
2013-09-16 17:27
162 查看
一、首先,看一下最简单的C文件
为hello.c编写makefile文件,这里用gcc编译
$ vi Makefile
从中可以看出,最简单的makefile文件只需要两行,我们分别来看
第1行:hello是要生成的文件,hello.c是编译需要的源文件,中间以:分隔
第2行:是具体的编译命令
二、我们还可以用gcc先把hello.c编译成机器语言,以.o结尾,最后再将各个文件进行链接生成二进制文件
上面的makefile文件则可以写成这样:
从上面的代码中可以看出,最后编译的hello是由hello.o最后生成的
先看第3,4行:第3行,hello.c先编译生成hello.o,第4行,是生成hello.o具体的命令
再看第1,2行:第1行,二进制文件hello需要hello.o,第2行,是生成hello具体的命令
是不是很easy.
三、如果有多个文件需要进行链接,只需生成.o文件,最后链接生成最终文件
如:有file1.h,file1.c, file2.h, file2.c, main.c五个文件
makefile文件如下:
从上面代码可以看出,需要先编译出file1.o,file2.o,main.o文件,最后链接生成最终的main文件,大功告成。
Attention: A tab is needed before the command like `gcc -c main.c` or will be terrible!!
//hello.c文件 #include <stdio.h> void main() { printf("hello world\n"); }
为hello.c编写makefile文件,这里用gcc编译
$ vi Makefile
hello:hello.c gcc -o hello hello.c
从中可以看出,最简单的makefile文件只需要两行,我们分别来看
第1行:hello是要生成的文件,hello.c是编译需要的源文件,中间以:分隔
第2行:是具体的编译命令
二、我们还可以用gcc先把hello.c编译成机器语言,以.o结尾,最后再将各个文件进行链接生成二进制文件
上面的makefile文件则可以写成这样:
hello:hello.o gcc -o hello hello.o hello.o:hello.c gcc -c hello.c
从上面的代码中可以看出,最后编译的hello是由hello.o最后生成的
先看第3,4行:第3行,hello.c先编译生成hello.o,第4行,是生成hello.o具体的命令
再看第1,2行:第1行,二进制文件hello需要hello.o,第2行,是生成hello具体的命令
是不是很easy.
三、如果有多个文件需要进行链接,只需生成.o文件,最后链接生成最终文件
如:有file1.h,file1.c, file2.h, file2.c, main.c五个文件
makefile文件如下:
main:main.o file1.o file2.o gcc -o main main.o file1.o file2.o main.o:main.c file1.h file2.h gcc -c main.c file1.o:file1.h file1.c gcc -c file1.c file2.o:file2.h file2.c gcc -c file2.c
从上面代码可以看出,需要先编译出file1.o,file2.o,main.o文件,最后链接生成最终的main文件,大功告成。
Attention: A tab is needed before the command like `gcc -c main.c` or will be terrible!!
相关文章推荐
- Linux 环境下 Makefile 文件制作浅谈(一)
- Linux 环境下 Makefile 文件制作浅谈
- 用autotools制作Makefile 和configure文件
- Linux平台Makefile文件的编写基础入门(课堂作业)
- MPC制作项目文件(makefile) (二)
- 制作makefile文件
- Linux 环境下 Makefile 文件制作浅谈(二)
- 简单制作Makefile 文件
- MPC制作项目文件(makefile) (二)
- 第三课 Makefile文件的制作(上)
- 第五课 Makefile文件的制作(补充)
- \t\tHLP文件制作实例入门
- makefile文件制作
- Makefile_文件制作浅谈
- Makefile文件制作
- python文件编译成so介绍 - 2.使用makefile将py文件编译成so文件并制作成rpm包,实现自动化
- makefile文件的制作
- 最简单 的入门且最直观的Makefile和.so文件编译链接使用方法
- Makefile_文件制作浅谈
- Linux入职基础-7.4_Makefile文件使用入门很简单(实例讲解)