1、为什么要生成工程

        如果在实现一个程序的时候不生成工程,由于机器配置的不同,可能在一台机器上可以运行,而在其他机器上就不能运行了。如果用生成工程的方式,那么该工程会根据不同的机器配置,生成对应的配置文件,使得同一个程序在任何一个机器上都可以编译运行。

 

2、生成工程的步骤

         1)mkdir project

         2)vim hello.c,并写这个程序。

         3)运行autoscan命令,这时生成autoscan.log  configure.scan两个文件。其中,autoscan.log是一个空文件,configure.scan是一个模板文件,根据上面的提示填写内容,然后将其改为configure.ac或者configure.in文件。其中,configure.ac是新的写法,configure.in是比较旧的写法。并修改configure.ac文件。

         其中,configure.ac的写法是:


         4) 在工程根目录下新建Makefile.am文件,并在各个模块子目录下也新建makefile.am文件。(并修改Makefile.am文件

         其中,Makefile.am的写法是:

 

         5) 在工程根目录下新建NEWS、 README、 ChangeLog 、AUTHORS文件。

         6)运行aclocal命令
         7)运行autoconf命令
         8)运行automake -a命令
         9)运行./confiugre,生成Makefile

 

 

http://www.itqun.net/content-detail/155779.html

http://blog.csdn.net/fyzhao/archive/2008/11/20/3334605.aspx

http://blog.csdn.net/rougker/archive/2007/10/23/1839855.aspx(最全)

http://www.freesoftwaremagazine.com/books/agaal/automatically_writing_makefiles_with_autotools

 

 

 

运行automake -a之后出现的错误:

configure.ac:7: required file `config.h.in' not found
Makefile.am:4: compiling `homework.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.ac'

 

Logo

更多推荐