Makefile自动生成,初级版本
来源:互联网 发布:深圳几米软件 编辑:程序博客网 时间:2024/04/29 03:27
Makefile文件自动生成详细教程
By dumyy
实例:hello.c,;;使用环境:cent OS 6.5
1、新建目录:test,在test目录下新建文件:hello.c
2、运行autoscan 命令:会发现生成autoscan.log,configure.scan,两个文件
Rename configure.scan 为 configure.in,同时编辑configure.in里面的内容:
# -*- Autoconf -*-
# Process this file with autoconf to producea configure script.
AC_PREREQ([2.63])
AC_INIT(hello,1.0,dumyy2728@163.com)
AC_CONFIG_SRCDIR([hello.c])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE(hello,1.0)
# Checks for programs.
AC_PROG_CC
# Checks for libraries.
# Checks for header files.
# Checks for typedefs, structures, and compilercharacteristics.
# Checks for library functions.
AC_OUTPUT([Makefile])~
3、运行aclocal命令,生成aclocal.m4,autom4te.cache(目录)
4、运行autoconf命令,生成configure文件
5、运行autoheader命令:目标文件中生成config.h.in文件
6、运行automake命令,但是在此之前先创建一个Makefile.am文件,如下编辑该文件,保存后退出。
运行automake:automake –add-missing
7 、运行./configure,自动配置文件
7、测试,运行命令 make
发现生成可执行文件:hello.o
8、运行
成功。
-----------------------------------------------------------------------------------------------------------------
这只是在linux平台下的测试,如果要是嵌入式的平台下,所选用的编译器就不再是gcc编译器,还可能是mips-linux-gcc,arm-linux-gcc等等,这时应该在configure.in文件内再配置编译器,后面会详细给出探索情况,目前我也不会。
=====================================================================后注释:
Makefile使用的是两个生成器:autoconf automake
Autoconf的使用:
1、autoscan
目标生成configure.scan,configure.log,其中configure.scan是configure.in的蓝本
2、aclocal
一个perl的脚本程序。由于automake最终要用到AM_INIT_AUTOMAKE中宏定义的内容,但它并不是一个标准的宏定义,因此会被aclocal生成的aclocal.m4置换。当没有参数执行aclocal时,acl;ocal会根据configure.in中的一些宏定义,生成一个合适的aclocal.m4文件。
3、autoconf
用于生成可自动配置源代码包的工具。
Automake的使用
1、在执行命令之前,需要先创建一个Makefile.am,需要手工书写
AUTOMAKE_OPTIONS=foreign
bin_PROGRAMS=hello
hello_SOURCES=hello.c
2、执行automake –add-missing ,automake会根据Makefile.am产生一些文件,包含最重要的Makefile.in.
3、执行./configure,自行配置。
=================================================================
- Makefile自动生成,初级版本
- makefile 自动生成makefile 步骤
- ACE自动生成makefile
- 自动生成makefile
- automake自动生成makefile
- makefile的自动生成
- makefile----自动生成依赖性
- 自动生成Makefile
- 怎样自动生成makefile
- ubuntu 自动生成 makefile
- 自动生成makefile
- qmake 自动生成Makefile
- Makefile自动生成
- Makefile自动生成流程
- makefile自动生成
- 如何自动生成Makefile
- Makefile自动生成
- makefile自动生成依赖性
- oracle10g监听器无法启动,提示“错误1067:进程意外终止”
- 堆栈的链式储存实现
- android学习之旅
- 2015年计划
- Postgis
- Makefile自动生成,初级版本
- UVA 10892-LCM Cardinality
- (5)unity入门,刚体、射线、粒子
- android TIF(Tv Input Framework)使用
- tar
- Vuforia SDK---- AR开发vuforia 二维码扫描
- jQuery插件 -- Cookie插件
- spring4mvc
- sphinx --- 安装中碰到的问题