懒人学习automake, Makefile.am,configure.ac(转)

Posted 鸭子船长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了懒人学习automake, Makefile.am,configure.ac(转)相关的知识,希望对你有一定的参考价值。

已经存在Makefile.am,如何生成Makefile?

 

步骤:


 

 
  1.  1 [[email protected] hello]# autoscan .///在当前文件夹中搜索  
     2   
     3 [[email protected] hello]# cp configure.scan configure.ac //复制文件  
     4 [[email protected] hello]# vi configure.ac //编辑文件  
     5   
     6     编辑configure.ac,加入下面一行:  
     7     AM_INIT_AUTOMAKE(hello,1.0)      //automake所必备的宏,必须添加  
     8   
     9 [[email protected] hello]# aclocal     //执行aclocal生成aclocal.m4文件  
    10 [[email protected] hello]# autoconf   //执行autoconf生成configure文件  
    11 [[email protected] hello]# autoheader  
    12 [[email protected] hello]# automake --add-missing  
    13 [[email protected] hello]# touch NEWS; touch README; touch AUTHORS; touch ChangeLog    //创建NEWS等文件,如果没有自动生成,手工创建  
    14 [[email protected] hello]# automake --add-missing //再运行一次  
    15 [[email protected] hello]# ./configure    //配置,生成Makefile文件  
    16 [[email protected] hello]# make     //执行make命令

     

      



 

以上过程可能出现一些警告,请忽略。最后,给出一个Makefile.am的内容作为例子:

 

 
  1.  1 AM_LDFLAGS = -lpthread -lc -lm -lrt -ldl  
     2 CXXFLAGS = -D__STDC_LIMIT_MACROS -g -Wall -DORDER_SERIALIZE #-O2 -fno-strict-aliasing  
     3   
     4 bin_PROGRAMS = parser_main  
     5 parser_main_SOURCES = parser_main.cpp \  
     6                 Parser.cpp \  
     7                 Lexer.cpp \  
     8     SelectStmt.cpp \  
     9     InsertStmt.cpp \  
    10     UpdateStmt.cpp \  
    11     DeleteStmt.cpp \  
    12     Stmt.cpp \  
    13     Expr.cpp \  
    14                 Identifier.cpp  
    15 ~    

     

                                  



 

 

参考文献:

http://os.51cto.com/art/201006/207098.htm

http://os.51cto.com/art/201006/207099.htm

http://os.51cto.com/art/201006/207101.htm

 

如何写Makefile.am

以上是关于懒人学习automake, Makefile.am,configure.ac(转)的主要内容,如果未能解决你的问题,请参考以下文章

在 Makefile.am(automake) 中使用 if 语句

Automake:Makefile.am 中 *_la_LDFLAGS 的有效值是啥?

automake 第三方库

未定义的引用使用 automake

如何使用 Automake 创建一个特定目录?

.SUFFIXES 拒绝在 Automake 中工作