Autotool

Posted by 每特17劃 on 2005-10-30

Autotool

之前編譯 iiimccf 都是用手工製的 Makefile 硬幹, 雖然比較速成, 但總不是長久之道. 想起來, 欠這個 Autotool 的 script file 已經很久了, 早作晚作都得作, 花了一整天的時間技術文件裡跟自己的怯意掙扎. 終於弄出了一個可以 work 的 tarball . 我現在已經迫不及待的想把它丟進svn裡去了.

Autotool 主要包含 Automake, Autoconf, Libtool 這三個工具, 主要的用途就是作 “source package” 的包裝. Autotool 必需檢查表頭檔和函式庫的相依性, 還得顧及各個平台的編譯環境, 再產生出相應的 configure script 和 Makefile. 和 “binary package” 比較起來, Autotool 顯得複雜多了. 這個 GNU 出品的 Build system 是建構原始碼美夢的一道橋梁, Gentoo 和 FreeBSD 的 build system 就都根基於這個基礎之上.

然而這也是新手進入原始碼寫作的一項嚴格的試煉.

這一次的進度, 主要參考的網路資料有:

The GNU build system 這一篇是 step by step 的簡介文件. 雖然介紹的不算完整, 然後他最介紹了入門最重要的步驟和觀念, 對入門的我價值非凡. 此外最重要的是, 他還提供了一張很重要的關係圖, File dependencies in a ./configure project. 這對於Autotool的學習有很大的幫助.

GNU Autoconf, Automake, and Libtool, 這一本就是常聽見的 Autobook. 算是目前看到最完整的參考文件.