2012-08-14 108 views
3

當某個Perl項目的Build.pl在以前未用於Perl開發的系統上運行時,如果用戶想要將某些程序包預先安裝到安裝中,它會一次又一次地中斷。運行Build.pl非交互式

有沒有辦法讓Build.PL的非交互式默認運行,而不必看幾個小時,並反覆按「進入」?

回答

4

PERL_MM_USE_DEFAULT=1

如果設置爲真值那麼MakeMaker裏面的提示功能將始終返回默認值,而無需等待用戶輸入。

Works the same in Module::Build.


PERL_EXTUTILS_AUTOINSTALL=--default-deps

--alldeps將安裝所有功能,同時--defaultdeps將只安裝的功能,其默認的答案是 '是'。


如果使用CPAN,還配置prerequisites_policy=follow

這需要照顧大多數提示。有幾個壞蘋果仍然需要某種形式的人爲干預。 Distroprefs照顧他們,看到distroprefs directory

+0

這樣做。然而,它也安裝了「推薦」軟件包,也是我不想要的。我不明白爲什麼這不是由Build.PL的使用打印輸出解釋的。 – dronus 2012-08-14 19:53:37

+0

因爲這個想法還沒有出現在任何人身上。如果你想要這個功能,[提交一個bug](https://rt.cpan.org/Dist/Display.html?Name=Module-Build)。 – daxim 2012-08-14 19:59:29

+0

也許我做錯了什麼?我期望任何下載Perl項目源代碼並嘗試構建它的人都會遇到這個問題。 – dronus 2012-08-14 22:17:16