实战Makefile.am
如果一个大的工程,有很多子模块组成, 那么每一个文件的编译都是自己写Makefile文件很是麻烦,使用自动生成的makefile将为自己省去很多麻烦,接下来,主要针对自动生成Makefile的过程和一些细节文件展开讨论分析。
表一列出了可执行文件、静态库、头文件和数据文件,四种书写Makefile.am文件个一般格式。
表 1Makefile.am一般格式
对于可执行文件和静态库类型,如果只想编译,不想安装到系统中,可以用noinst_PROGRAMS代替bin_PROGRAMS,noinst_LIBRARIES代替lib_LIBRARIES。
Makefile.am还提供了一些全局变量供所有的目标体使用:
表 2 Makefile.am中可用的全局变量
在Makefile.am中尽量使用相对路径,系统预定义了两个基本路径: