automake

make Make make

Automake是一種幫助『自動』產生Makefile檔案的軟體,並且讓開發出來的的軟體可以象Apache,MySQL和常見的GNU軟體一樣,程式設計者只需要寫一些預先定義好的宏(macro),提交給Automake處理後會產生一個可以供autoconf使用的Makefile.in檔案。再配合利用Autoconf產生的自動培植設定檔案configure即可產生一份符合符合GNUMakefile慣例的Makeifle了。

automake

 在Unix上寫過程式的人一般都遇到過Makefile,尤其是用C來開發程式的人。用make來開發和編譯程式的確很方便,可是要寫出一個MakeFile就不那么簡單了。偏偏介紹Makefile的檔案不多,GNUMake那份印出來要幾百頁的檔案,光看完Overview自己就快要先Over了,難怪許多人聞Unix色變。本文將介紹如何利用GNUAutoconf及Automake這兩套軟體來幫助『自動』產生Makefile檔案,並且讓開發出來的的軟體可以象Apache,MySQL和常見的GNU軟體一樣,只要會``./configure'',``make'',``makeinstall''就可以把程式安裝到系統中。如果您有心開發OpenSource的軟體,或只是想在Unix系統下寫寫程式。希望這份介紹檔案能幫助您輕鬆的進入UnixProgramming的殿堂。
1.簡介
Makefile基本上就是『目標』(target),『關聯』(dependencies)和『動作』三者所組成的一系列規則。而make就會根據Makefile的規則來決定如何編譯(compile)和連線(link)程式。實際上,make可做的不只是編譯和連線程式,例如FreeBSD的portcollection中,Makefile還可以做到自動下載遠程程式,解壓縮(extract),打補丁(patch),設定,然後編譯,安裝到系統中。
Makefile基本結構雖然很簡單,但是妥善運用這些規則就可以變換出許多不同的花樣。卻也因為這樣,許多剛剛開始學習寫Makefile時會覺得沒有規範可以遵循,每個人寫出來的Makefile都不大一樣,不知道從哪裡下手,而且常常會受到自己的開發環境的限制,只要環境參數不同或者路徑更改,可能Makefile就得跟著修改修改。雖然有GNUMakefileConventions(GNUMakefile慣例例)訂出一些使用GNU程式設計時撰寫Makefile的一些標準和規範,但是內容很長而且很複雜,並且經常作一些調整,為了減輕程式開發人員維護Makefile的負擔,因此出現了Automake。
程式設計者只需要寫一些預先定義好的宏(macro),提交給Automake處理後會產生一個可以供Autoconf使用的Makefile.in檔案。再配合利用Autoconf產生的自動培植設定檔案configure即可產生一份符合符合GNUMakefile慣例的Makeifle了。

相關詞條

相關搜尋

熱門詞條

聯絡我們