本文將給大家介紹如何使用 autoconf 和 automake 兩個工具來幫助我們自動地生成符合自由軟件慣例的 Makefile ,只要使用 “./configure” , “make” , “make instal” 就可以把程序安裝到 Linux 系統中去了。
工具/原料
ubuntu
vim編輯器
autoscan(sudo apt-get autoscan)
方法/步驟
在目錄HelloMakefile下,創建測試文件main.c,代碼如下:
#include
int main()
{
printf("hello linux world !");
return 0;
}
運行autoscan,生成autoscan.log,configure.scan,還有main.c
將configure.scan文件重命名為configure.in,命令如下:
mv configure.scan configure.in
修改configure.in中的內容:
4 AC_PREREQ([2.68]) 5 AC_INIT([HelloMakefile], [1.0], [[email protected]]) 6 AC_CONFIG_SRCDIR([main.c]) 7 8 # Checks for programs. 9 AC_PROG_CC 10 11 # auto init 12 AM_INIT_AUTOMAKE(HelloMakefile, 1.0) 13 14 # write out to the Makefile 15 AC_OUTPUT(Makefile)
執行aclocal命令,生成aclocal.m4 autom4te.cache兩個文件
執行autoconf命令,生成重要的configure.in文件
在當前目錄下(本文所有文件都在HelloMakefile這個目錄下),新建Makefile.am文件
編輯Makefile.am文件:
AUTOMAKE_OPTIONS=foreign bin_PROGRAMS=HelloMakefile
HelloMakefile_SOURCES=main.c
執行命令automake --add-missing,生成重要的Makefile.in文件,這裡如果沒有生成Makefile.in文件,請檢查Makefile.am文件是否編寫正確
執行.configure,生成Makefile文件
測試Makefile文件:執行make,生成HelloMakefile可執行文件
執行./HelloMakefile文件,測試成功!
至此,我們生成了Makefile標準文件,並且使用編譯執行Makefile文件,生成可執行文件,並且成功運行可執行文件!