Makefile.am
目标:
可执行文件:bin_PROGRAMS
行动态库:lib_PROGRAMS (xxxlibdir=$(安装path);xxxlib_PROGRAMS; xxx_SORUCES=...)
行静态库:lib_LIBRARIES、lib_LTLIBRARIES(libtool)
noinst_LIBRARIES、noinst_PROGRAMS
(noinst只想编译,不想安装到系统中)
automake选项:
AUTOMAKE_OPTIONS=foreign
参数:
AM_CPPFLAGS 、AM_CFLAGS 、XXX__CFLAGS (XXX对应目标的标志)
AUTOMAKE_OPTIONS=foreign(如果不加这句的话,需要在autoconf之前,先执行touch NEWS
README AUTHORS ChangeLog 来生成'NEWS'、'AUTHOR'、 'ChangeLog' 等文件)
目录:
SUBDIRS、EXTRA_DIST、DATA
源文件:XXX需要用生成的目标文件名替换,如果文件名中含".",则需要改为“_”; 多个源文件用空格分开,也可以用变量表示文件
XXX_SOURCES
连接:表示编译本工程的附加链接库
LDADD、xxx_LDADD
configure.ac修改
AC_INIT 改成相应的信息
AM_INIT_AUTOMAKE 添加此行
#AC_PROG_LIBTOOL (使用libtool时,添加在AC_PROG_CC下)
AC_CONFIG_MACRO_DIR([m4])
LT_INIT
AC_PROG_RANLIB (需要加入的内容,因为使用了静态库)
AC_CONFIG_FILES 要生成Makefile的文件夹位置