Automake使用第三方库的方法

初学automake,只是使用简单的helloworld程序走了一遍流程,现在有个项目需要,自己试着使用automake自己编译了一下,主要遇到的问题是有第三方的库,例如pthread,alog,anet等库的时候就不知所措了,不知道在哪里添加相应的配置信息才能在自动生成的makefile文件中加入第三方库的引用信息,使得编译的时候能够让编译器找到库文件。我的配置是这样的:

  1. 在Makefile.am文件中添加INCLUDES=-I/home/admin/path/to/lib,如果有多个的话使用空格隔开
  2. 在xxxx_LDADD中添加库的lib文件路径

如下代码所示:

  1 AUTOMAKE_OPTIONS=foreign
  2 #SUBDIRS=tinyxml
  3 bin_PROGRAMS=abdiff
  4 
  5 #第三方库的头文件
  6 INCLUDES=-I/home/admin/workspace/code/anet/include -I/home/admin/workspace/code/alog/include -I/home/admin/workspace/code/zlib/include
  7 abdiff_SOURCES=abdiff.cpp Parser.cpp Result.cpp SimpleFileReader.cpp configure.c
  8 #第三方库lib文件                                                                                                                                                   
  9 abdiff_LDADD=tinyxml/libtinyxml.so /home/admin/workspace/code/anet/lib/libanet.a /home/admin/workspace/code/alog/lib/libalog.a /home/admin/workspace/code/zlib/lib/    libz.a -lpthread


在查找解决方案的时,看到还有说在configure.in中添加AC_CHECK_LIB([pthread])的方式,我没有尝试过,不知道对自己开发的库适不适用,暂时先写到这,以后有时间在补充吧。

你可能感兴趣的:(makefile,编译器)