makefile.am,makefile.in,makefile--学习笔记

  1. Makefile.am: 是一些编译的选项及要进行编译的文件项等,例如:
    1. bin_PROGRAMS=test
    2. lib_LIBRARIES = libhand.a
    3. libhand_a_SOURCES = hand.c
  2. Makefile.in是由Makefile.am和configure.ac的基础之上而生成的。
  3. Makefile: 使用生成的configure脚本根据Makefile.in中的内容进行生成的最终进行程序或库编译的规则文件;
  4. 一般的生成流程:
    1. automake 读取 Makefile.am 来产生 Makefile.in,
    2. configure 读取 Makefile.in 来产生 Makefile
    3. configure 脚本通常由 autoconf 读取 configure.in 产生
  5. 目的就是让程序员只写一个规则:.am文件/或.in文件,就能生成适合各种配置/平台的Makfiles。
  6. 如果写过Makefile,就会知道手工写一个放之四海而皆准的Makefile是多痛苦了。
  7. 当然这个Makefile的目的不是编译helloworld之类的小程序

猜你喜欢

转载自blog.csdn.net/weixin_45647721/article/details/127288889