本文主要是介绍如何在linux下写makefile,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Windows下用集成开发环境(IDE)开发程序时不会涉及到编译、链接的步骤,集成开发环境已经把这些工作给你集成好了,你要做的就是根据语言的语法来编写代码。所以Windows下开发程序对makefile会有点生疏。
makefile的作用也是把你编写好之后的源文件进行编译与链接,只是它这个过程需要你自己去指定编译与链接的文件。
makefile的基本格式如下:
target… :prerequisite…
(Tab键)command
格式解释
target:生成的目标文件,可以是可执行文件,也可以是中间目标文件
prerequisite:生成target所需要的文件
command:make需要的执行命令,一般是编译与链接的命令,命令前面必须要有Tab键才能有效果
makefile的简单例子(用的Ubuntu11.10):
makefile文件中的内容:
makefile文件与hello.c源文件都在我新建的command文件夹中;然后转到控制台再切换到command目录下,直接输入make会才生hello.o与exe.out两个文件,如下图:
在控制台下的命令:
GCC
GCC是一个用于Linux系统下编程的编译器。GCC原名为GNU C语言编译器(GNU C Compiler),因为它原本只能处理C语言。GCC很快地扩展,变得可处理C++。之后也变得可处理Fortran、Pascal、Objective-C、Java、Ada,以及Go与其他语言。
命令解释
gcc –c hello.c:编译command目录下的hello.c源文件,编译之后会成成hello.o中间文件。
rm:删除command目录下的hello.o与exe.out文件
./exe.out:输出exe.out可执行文件,hello.c中我写的是Hello World!
make:make命令与make exe命令执行的效果是一样的。
Windows下的VS系列的编译器是cl.exe;链接器是link.exe;makefile生成的是nmake.exe;linux下gcc把编译与链接两个功能都包括进来了。
如果对编译、链接、源文件到可执行文件的详细过程,可以看看程序员的自我修养,链接地址:http://download.csdn.NET/detail/lishuanglin131/4852131
这篇关于如何在linux下写makefile的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!