当前位置: 首页 > 工具软件 > autoHeader > 使用案例 >

嵌入式makefile自动生成工具使用------autotool

钮巴英
2023-12-01

嵌入式makefile自动生成工具使用------autotool 这边博文是本人在学习嵌入式所记录的一篇文章

autotool的使用之前注意事项

在使用autotool之前先确认有没有安装以下工具:
aclocal、autoscan、autoconf、autoheader、automake,
可以使用which命令随便查看一个工具如:which aclocal,如果没有安装可以使用下面命令进行安装sudo apt-get install autoconf

autotool使用流程

在一个目录夹建立一个c文件

1.运行 autoscan

该命令会在指定目录以及子目录树中检测源文件,若没有给出目录则默认就会在当前目录以及子目录检查。
在执行该命令时候会autoscan会尝试读取configure.ac,若没有该文件则自动创建configure.scan
configure.scan的内容如下:(有增添以及修改)

#                             -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
 
AC_PREREQ([2.69])				#表示autoconf版本
AC_INIT([hello], [1.0], [null]) #hello表示当前程序名,1.0表示当前程序版本,null表示一般表示作者的邮箱,也也可以是其他描述(修改)
AC_CONFIG_SRCDIR([hello.c])	#用来检测文件是否存在的宏,这里的hello.c文件表示当前目录下的源文件(修改)
AC_CONFIG_HEADERS([config.h]) #用于生成config.h文件,给autoheader使用
AM_INIT_AUTOMAKE([hello],[1.0]) #(添加)
# Checks for programs.
AC_PROG_CC

# Checks for libraries.

# Checks for header files.

# Checks for typedefs, structures, and compiler characteristics.

# Checks for library functions.
AC_CONFIG_FILES([Makefile])#(添加)
AC_OUTPUT

2.运行 aclocal

注意:运行之前先要将configure.scan重命名为configure.ac 命令为 mv configure.scan configure.ac
运行该命令生成aclocal.m4文件,该文件主要处理本地的宏定义

3.运行 autoconf

该命令会生成configure可运行文件

4.运行 autoheader

该命令负责生成config.h.in

5.运行 automake -a 或者 automake --add-missing

注意:运行之前先要将创建Makefile.am文件,文件内容如下:

AUTOMAKE_OPTIONS=foreign #表示软件等级 软件等级有三个分别是foreign、gnu和gnits 默认的是gnu 
bin_PROGRAMS= hello #执行文件名
hello_SOURCES= hello.c #表示hello这个执行需要的原始文件

6.运行configure

到此为止已经生成了makefile文件

注:使用该方法生成的makefle可以使用make install将程序安装到bin目录下,也可以使用make dist将程序打包发布

 类似资料: