Linux Makefile自动生成--总体流程
2017-03-17 17:24
393 查看
原始出处:http://blog.csdn.net/spch2008/article/details/12504705
步骤一:
[plain] view
plain copy
print?
your source files --> [autoscan*] --> [configure.scan] --> configure.ac
autoscan扫描源文件,生成configure.scan,手动更改成configure.ac。内有各种宏定义,用于检测系统环境。
步骤二:
[plain] view
plain copy
print?
[acinclude.m4] --.
|
[local macros] --+--> aclocal* --> aclocal.m4
|
configure.ac ----’
aclocal首先加载本地能够查找到的宏定义,然后扫描configure.ac,将configure.ac中使用的宏从加载的文件中拷贝到aclocal.m4中。
注意:只要用到了某个宏,即将存放该宏的文件中的内容全部拷贝到aclocal.m4中。
步骤三:
[plain] view
plain copy
print?
configure.ac --.
| .------> autoconf* -----> configure
[aclocal.m4] --+---+
| ‘-----> [autoheader*] --> [config.h.in]
[acsite.m4] ---’
autoconf通过aclocal.m4,acsite.m4,将configure.ac中的宏展开,形成configure文件。
而autoheader则根据configure.ac中的宏AC_CHECK_FUNC形成config.h.in模板。该步骤主要用于代码移植,将在后续文章中介绍。
步骤四:
[plain] view
plain copy
print?
configure.ac --.
+--> automake* --> Makefile.in
Makefile.am ---’
Makefile.am需要用户提供,用于对生成的Makefile进行配置。
步骤五:
[plain] view
plain copy
print?
.-------------> [config.cache]
--------+-------------> config.log
|
. v .-> [config.h] -.
+--> config.status* -+ +--> make*
’ ‘-> Makefile ---’
运行./configure,生成config.log,config.status,后者接受config.h.in, Makefile.in,生成config.h,Makefile。
我觉得可以这样认为,.in文件为配置文件,用户可以进行一些更改。
步骤一:
[plain] view
plain copy
print?
your source files --> [autoscan*] --> [configure.scan] --> configure.ac
autoscan扫描源文件,生成configure.scan,手动更改成configure.ac。内有各种宏定义,用于检测系统环境。
步骤二:
[plain] view
plain copy
print?
[acinclude.m4] --.
|
[local macros] --+--> aclocal* --> aclocal.m4
|
configure.ac ----’
aclocal首先加载本地能够查找到的宏定义,然后扫描configure.ac,将configure.ac中使用的宏从加载的文件中拷贝到aclocal.m4中。
注意:只要用到了某个宏,即将存放该宏的文件中的内容全部拷贝到aclocal.m4中。
步骤三:
[plain] view
plain copy
print?
configure.ac --.
| .------> autoconf* -----> configure
[aclocal.m4] --+---+
| ‘-----> [autoheader*] --> [config.h.in]
[acsite.m4] ---’
autoconf通过aclocal.m4,acsite.m4,将configure.ac中的宏展开,形成configure文件。
而autoheader则根据configure.ac中的宏AC_CHECK_FUNC形成config.h.in模板。该步骤主要用于代码移植,将在后续文章中介绍。
步骤四:
[plain] view
plain copy
print?
configure.ac --.
+--> automake* --> Makefile.in
Makefile.am ---’
Makefile.am需要用户提供,用于对生成的Makefile进行配置。
步骤五:
[plain] view
plain copy
print?
.-------------> [config.cache]
--------+-------------> config.log
|
. v .-> [config.h] -.
+--> config.status* -+ +--> make*
’ ‘-> Makefile ---’
运行./configure,生成config.log,config.status,后者接受config.h.in, Makefile.in,生成config.h,Makefile。
我觉得可以这样认为,.in文件为配置文件,用户可以进行一些更改。
相关文章推荐
- Makefile自动生成流程
- 使用Linux auto Makefile自动生成的运行步骤
- Linux Makefile自动生成--总体流程
- 自动生成Makefile 流程
- 学习笔记linux c++ 0707(用autoscan自动生成makefile文件)
- 关于Linux的makefile的自动生成,以及.configure及编译选项
- linux下的Makefile的自动生成
- Linux Makefile自动生成--config.h
- linux 下 C 编程和make的方法 (七、补充,模块化项目组织的Makefile设计和自动生成脚本)
- linux 下的makefile自动生成
- linux下的Makefile的自动生成
- linux下的静态库与动态库的区别,Gdb调试段错误,自动生成Makefile
- linux下makefile自动生成
- 自动生成Linux下Makefile全攻略(下)
- 自动生成Linux下Makefile全攻略
- Linux Makefile自动生成的运行步骤
- Linux Makefile自动生成的运行步骤
- Linux相关-------简单工程Makefile的自动生成
- Linux下Makefile的自动生成步骤
- 自动生成Linux下Makefile全攻略(上)