Gnu

./configure 檢查是否與檢查是否

  • April 27, 2019

./configure 腳本輸出checking ifchecking whether執行

檢查條件的兩個結果有何不同?

configure腳本最常使用該措辭checking whether,因為這是預設autoconf宏中的預設措辭。

如果一個項目的configure腳本說checking if,那麼這意味著同樣的事情,並且可能是由開發人員自己編寫(或借用)的自定義測試宏產生的。

例如,bash在我的機器上配置 5.0.7 時,我得到 44checking whether並且只有 5 checking ifchecking if大部分來自自定義測試宏。

checking if the linker (/usr/bin/ld) is GNU ld... yes
checking if dup2 fails to clear the close-on-exec flag... no
checking if opendir() opens non-directories... no
checking if getcwd() will dynamically allocate memory with 0 size... yes
checking if signal handlers must be reinstalled when invoked... no

(這裡的第一個實際上不是特定於 的宏bash,但它仍然來自項目的aclocal.m4文件)

在我為工作而維護的項目中,我們主要使用預設測試宏和Autoconf 存檔中的宏,根本沒有checking if,但有 65 個其他類型的輸出。

歸根結底,兩者之間沒有有效的區別,就像他們在英語口語中沒有真正的區別一樣。

引用自:https://unix.stackexchange.com/questions/515824