18
This answer對CMake的一個前一個問題顯示了此命令行:`-H.`選項對於CMake意味着什麼?
cmake -H. -Bbuild -G "MSYS Makefiles"
什麼任務,就在-H.
選項來執行嗎? cmake --help
說-H
打印幫助...
我正在使用CMake 3.2.3。
This answer對CMake的一個前一個問題顯示了此命令行:`-H.`選項對於CMake意味着什麼?
cmake -H. -Bbuild -G "MSYS Makefiles"
什麼任務,就在-H.
選項來執行嗎? cmake --help
說-H
打印幫助...
我正在使用CMake 3.2.3。
正如聯答覆中提到,這是一個未公開的選項,但查看源代碼顯示其效果:
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的當前文件夾,並且源目錄可作爲位置參數提供(如果未找到,則源文件夾也將是當前工作目錄)。
爲什麼這些沒有記錄? :O – grisevg
@grisevg有一個補丁提交給[修復文檔問題](https://cmake.org/pipermail/cmake-developers/2016-June/028843.html)。但它被拒絕了。至於爲什麼這些文件不能被記錄或刪除(如果確實存在風險),仍然沒有令人滿意的答案。看來開發團隊不支持這些選項供公衆使用。 – wally