当使用GNU中的编译语言编程开发应用时,很多时候要使用Make管理项目。利用Make工具,可以将大型的开发项目分解成为多个更易于管理的模块。对于一个包括几百个源文件的应用程序而言,使用Make工具和Makefile文件就可以清晰地理顺各个源文件之间的关系。Make工具可以自动完成编译工作,并且只对程序员在上次编译后修改过的部分进行编译。因此,有效地利用Make工具,可以大大提高项目开发的效率。
Make工具最基本的功能是调用Makefile文件,通过Makefile文件来描述源程序之间的相互依赖关系,并自动维护编译工作。当然,Makefile文件需要按照某种语法进行编写,需要说明如何编译各个源文件并连接生成可执行文件,以及定义源文件之间的依赖关系。Makefile文件是许多编译器(包括Windows下的编译器)维护编译信息的常用方法。在集成开发环境中,用户可以通过友好的界面修改Makefile文件。
Makefile文件告诉Make以何种方式编译源代码和链接程序。典型地,可执行文件可由一些.o文件按照一定的顺序生成或者更新。如果在工程中已经存在一个或者多个正确的Makefile,当对工程中的若干源文件修改后,需要根据修改来更新可执行文件或者库文件,正如前面提到的只需要在Shell下执行“Make”。Make会自动根据修改情况完成源文件的对应.o文件的更新、库文件的更新和最终的可执行程序的更新。(www.xing528.com)
Make通过比较对应文件(规则的目标和依赖)的最后修改时间,来决定哪些文件需要更新、哪些文件不需要更新。对需要更新的文件,Make就执行数据库中所记录的相应命令(在Make读取Makefile以后会建立一个编译过程的描述数据库。此数据库中记录了所有各个文件之间的相互关系,以及它们的关系描述)来重建它。对于不需要重建的文件,Make什么也不做,而且可以通过Make的命令行选项来指定需要重新编译的文件。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。