2015-06-27 17 views

回答

24

正如聯答覆中提到,這是一個未公開的選項,但查看源代碼顯示其效果:

cmake::SetArgs()

if(arg.find("-H",0) == 0) 
    {  
    directoriesSet = true; 
    std::string path = arg.substr(2); 
    path = cmSystemTools::CollapseFullPath(path); 
    cmSystemTools::ConvertToUnixSlashes(path); 
    this->SetHomeDirectory(path); 

的最後一次通話,SetHomeDirectory實際上是設置源該項目的目錄。 -B選項(也未記錄)依次設置二進制目錄。

如果未設置這些選項,則二進制目錄將成爲執行cmake的當前文件夾,並且源目錄可作爲位置參數提供(如果未找到,則源文件夾也將是當前工作目錄)。

+9

爲什麼這些沒有記錄? :O – grisevg

+5

@grisevg有一個補丁提交給[修復文檔問題](https://cmake.org/pipermail/cmake-developers/2016-June/028843.html)。但它被拒絕了。至於爲什麼這些文件不能被記錄或刪除(如果確實存在風險),仍然沒有令人滿意的答案。看來開發團隊不支持這些選項供公衆使用。 – wally