1. 程式人生 > >AutoTool使用

AutoTool使用

1.0  簡介

Makefile而且常常會受到自己的開發環境的限制,只要環境引數不同或者路徑更改,可能 Makefile 就得跟著修改修改。雖然有 GNU Makefile Conventions (GNU Makefile慣例)訂出一些使用 GNU 程式設計時撰寫 Makefile 的一些標準和規範,但是內容很長而且很複雜,並且經常作一些調整,為了減輕程式開發人員維護Makefile 的負擔 , autotools系列工具應運而生。

必需的工具autoconf/automake/m4/perl/libtool

使用autotools生成Makefile的流程為:autoscan

->    aclocal    ->       autoconf->       automake.

autoconf是一個用於生成可以自動地配置軟體原始碼包,用以適應多種UNIX類系統的shell指令碼工具,其中autoconf需要用到 m4,便於生成指令碼。 最後生成可執行程式configure

automake是一個從Makefile.am檔案自動生成Makefile.in的工具。為了生成Makefile.in

 

2.0 按裝autotool 

       Ubuntu18.04  

sudo apt-get install autoconf   


    可以使用switch 可測試安裝是否成功,如下

@ubuntu:/mnt/hgfs/share/20181211_AutoTool/alib$ which aclocal
/usr/bin/aclocal

@ubuntu:/mnt/hgfs/share/20181211_AutoTool/alib$ which autoscan
/usr/bin/autoscan

@ubuntu:/mnt/hgfs/share/20181211_AutoTool/alib$ which automake
/usr/bin/automake

@ubuntu:/mnt/hgfs/share/20181211_AutoTool/alib$ which autoheader
/usr/bin/autoheader

@ubuntu:/mnt/hgfs/share/20181211_AutoTool/alib$ which autoconf
/usr/bin/autoconf

3.0 Autotools執行流程

 

1. 執行autoscan命令。這個命令主要用於掃描工作目錄,並且生成configure.scan檔案

 

2. 修改configure.scanconfigure.ac檔案,並且修改配置內容

 

3. 執行aclocal命令。掃描 configure.ac 檔案生成 aclocal.m4檔案。

 

4. 執行autoconf命令。這個命令將 configure.ac 檔案中的巨集展開,生成 configure 指令碼。

 

5. 執行autoheader命令。該命令生成 config.h.in 檔案。

 

6. 新增Makefile.am檔案,修改配置內容

 

7. 執行automake --add-missing命令。該命令生成 Makefile.in 檔案。

 

8. 執行 ./congigure命令。將Makefile.in命令生成Makefile檔案。

 

9. 執行make命令。生成可執行檔案。