Linux下Makefile的automake生成全攻略
Linux下Makefile的automake生成全攻略 在Linux系统中,Makefile是自动编译和链接的重要工具,但手工书写Makefile常常会遇到诸多问题。使用autoconf和automake两个工具可以帮助我们自动地生成符合自由软件惯例的Makefile。本文将详细介绍如何使用automake生成Makefile。 Makefile是用于自动编译和链接的,一个工程有很多文件组成,每一个文件的改变都会导致工程的重新链接,但是不是所有的文件都需要重新编译,Makefile中纪录有文件的信息,在make时会决定在链接的时候需要重新编译哪些文件。Makefile的宗旨就是:让编译器知道要编译一个文件需要依赖其他的哪些文件。当那些依赖文件有了改变,编译器会自动的发现最终的生成文件已经过时,而重新编译相应的模块。 使用automake,程序开发人员只需要写一些简单的含有预定义宏的文件,由autoconf根据一个宏文件生成configure,由automake根据另一个宏文件生成Makefile.in,再使用configure依据Makefile.in来生成一个符合惯例的Makefile。 在使用automake生成Makefile时,需要使用以下几个工具: * autoconf:生成configure文件 * automake:生成Makefile.in文件 * configure:根据Makefile.in生成Makefile 本文将使用helloworld程序为例,详细介绍Makefile的automake生成方法。 首先,需要新建三个文件:helloworld.c、configure.in、Makefile.am,然后执行以下命令: aclocal; autoconf; automake --add-missing; ./configure; make; ./helloworld 就可以看到Makefile被产生出来,而且可以将helloworld.c编译通过。 在生成Makefile时,需要按以下步骤进行: 1. 建目录:创建一个目录用于存放helloworld程序及相关文件。 2. 编写helloworld.c:使用自己喜欢的编辑器写一个helloworld.c文件。 3. 生成configure:使用autoscan命令生成configure.in文件,然后编辑它。 4. 生成Makefile.in:使用automake命令生成Makefile.in文件。 5. 生成Makefile:使用configure命令根据Makefile.in生成Makefile。 通过以上步骤,就可以生成一个符合自由软件惯例的Makefile,并可以使用“./configure”,“make”,“make install”命令来安装程序到Linux系统中去了。这将特别适合想做开放源代码软件的程序开发人员,又或如果你只是自己写些小的Toy程序,那么这个文章对你也会有很大的帮助。
- 粉丝: 3
- 资源: 935
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助