首先创建一个 Linux Makefile.am.这一步是创建Linux Makefile很重要的一步,automake要用的脚本配置文件是Linux Makefile.am,用户需要自己创建相应的文件。之后,automake工具转换成Linux Makefile.in。
AD:
在向大家详细介绍Linux Makefile之前,首先让大家了解下Linux Makefile,然后全面介绍Linux Makefile,希望对大家有用。由于毕业设计开发的平台是Linux, 为了在Linux进行,Linux Makefile的编写是必不可少的,为偷懒,我想使用autotools来进行Makefile的自动生成,在阅读大量的资料后,在理解的基础之上,做了一个小实验,过程记录得非常详细!
我的平台是:HP 6510B Notebook Fedora 8 32 位的Autotools工具的版本均为Fedora 8 完全自带的,尚未进行过升级!为了编译一个简单的源文件main.c,需要自动生成一个makefile,以下是步骤:
Linux Makefile第一步
在/root/project/main目录下创建一个文件main.c,其内容如下:
- #include <stdio.h>
- int main(int argc, char** argv)
- {
- printf("Hello, Auto Makefile!\n");
- return 0;
- }
此时状态如下:
- [root@localhost main]# pwd
- /root/project/main
- [root@localhost main]# ls
- main.c
- [root@localhost main]#
Linux Makefile第二步:
- 运行 autoscan , 自动创建两个文件:
- autoscan.log configure.scan此时状态如下:
- [root@localhost main]# autoscan
- [root@localhost main]# ls
- autoscan.log configure.scan main.c
- [root@localhost main]#
第三步:修改configure.scan的文件名为configure.in查看configure.in的内容:
- # -*- Autoconf -*-
- # Process this file with autoconf to produce a configure script.
-
- AC_PREREQ(2.61)
- AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
- AC_CONFIG_SRCDIR([main.c])
- AC_CONFIG_HEADER([config.h])
-
- # Checks for programs.
- AC_PROG_CC
-
- # Checks for libraries.
- # Checks for header files.
- # Checks for typedefs, structures, and compiler characteristics.
- # Checks for library functions.
- AC_OUTPUT
解读以上的文件:
- # -*- Autoconf