歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Linux AutoTools工具 詳述

我們前面分析了Makefile的編寫,其實一個大的項目,如果手工去寫Makefile的話會比較累,那麼我們可以用AutoTools的一系列工具來生成Makefile

Linux Makefile編寫 詳述  http://www.linuxidc.com/Linux/2016-11/137506.htm

大家在Linux中下載的任何源碼包都需要先執行configure的配置文件,這個就是用來生成Makefile的
AutoTools其實是一系列工具,包含aclocal、autoscan、autoconf、autoheader、和automake

可以用如下的流程圖來分析

我們下面用一個例子來說明

1 執行autoscan

它會在給定目錄及其子目錄樹中檢查源文件,默認是在當前目錄及其子目錄樹中進行檢查。執行autoscan後會產生一個configure.scan的腳本配置文件,我們把它改名為configure.in,這個後面用於生成configure的

然後修改這個文件

AC_INIT(main,1.0) // AC_INIT宏用來定義軟件的名稱和版本等信息。

AM_INIT_AUTOMAKE(main,1.0) //是automake所必備的宏,軟件名稱和版本號

AC_CONFIG_FILES([Makefile]) //用於生成相應的Makefile 文件

2 執行aclocal
生成一個“aclocal.m4”文件,該文件是處理本地的宏定義

3 執行autoconf
生成configure文件

4 autoheader
使用autoheader命令是為了成config.h.in文件。該工具通常會從acconfig.h文件中復制用戶定義的符號,若此處沒有自定義符號就不需創建acconfig.h文件

5 automake
這一步需要用到Makefile.am文件,這個文件需要我們自己創建
內容如下:

接下來使用automake生成configure.in文件,在這裡使用選項—adding-missing可以讓automake自動添加有一些必需的腳本

6 執行configure 這個就類似源碼包安裝的第一步了


我們看到Makefile生成了

7 執行make makeinstall,然後運行main

好了,大功告成!

Linux AutoTools工具就總結到這裡,如有問題,歡迎指正,謝謝。

Copyright © Linux教程網 All Rights Reserved