我是新的自動工具,但我無法找到autotools文檔中的章節,以核心答覆我的問題。configure.ac爲所有構建文件指定文件夾
是否有命令,我可以在configure.ac腳本中指定,將所有構建stuf(配置文件,Makefile等)存儲在一個文件夾中(例如./build)?或者我應該如何設置自動工具以避免在我的回購中出現混亂? 我的步驟:
$autoreconf --install
$./configure
$make
任何教程或文章將非常有用。
我是新的自動工具,但我無法找到autotools文檔中的章節,以核心答覆我的問題。configure.ac爲所有構建文件指定文件夾
是否有命令,我可以在configure.ac腳本中指定,將所有構建stuf(配置文件,Makefile等)存儲在一個文件夾中(例如./build)?或者我應該如何設置自動工具以避免在我的回購中出現混亂? 我的步驟:
$autoreconf --install
$./configure
$make
任何教程或文章將非常有用。
您不需要在configure.ac
中執行任何特殊操作即可啓用樹外 構建。你只需要不做任何錯誤。一個適當自動處理的軟件包將在樹內或樹外建立。
說你的autotooled包駐留在./foobar
,你已經正確的autotooling 使:
cd foobar
./configure
make
make distcheck
一切運作順利。然後同樣:
mkdir foobar_build
cd foobar_build
../foobar/configure
make
make distcheck
也將工作完全一樣,不同之處在於全部由 configure
腳本創建的文物和make
將在./foobar_build
而不是./foobar
。
你不能得到autoreconf
生成它創造出的樹 (在configure
腳本和朋友)的文件,因爲這些將被包括在make dist
產生的 分佈壓縮包(如foobar-1.0.tar.gz
) 。一個autotooled包的 最終用戶不應該需要有或理解的自動工具: 他們應該能夠:
出於同樣的原因,configure
腳本和朋友應該位於 源代碼管理存儲庫中,至少在 發佈用於克隆的發行分支中。
非常感謝Mike,這真的很好的闡明瞭我的觀點。 – Constantine