AUTOMOC_PATH_PREFIX¶
在 3.16 版本中新增。
當此屬性為 ON
時,CMake 會在啟用 AUTOMOC
的 Qt 目標上,為 moc
產生 -p
路徑前綴選項。
為了產生路徑前綴,CMake 會測試 moc
編譯的標頭檔是否在目標的 include directories
中。如果有的話,CMake 會相應地計算相對路徑。如果標頭檔不在 include directories
中,CMake 將省略 -p
路徑前綴選項。在這種情況下,moc
通常會產生相對的 include 路徑。
AUTOMOC_PATH_PREFIX
從變數 CMAKE_AUTOMOC_PATH_PREFIX
初始化,預設為 OFF
。
有關將 CMake 與 Qt 一起使用的更多資訊,請參閱 cmake-qt(7)
手冊。
可重現建置¶
對於可重現的建置,建議將 moc
編譯的標頭檔保留在目標的 include directories
中,並將 AUTOMOC_PATH_PREFIX
設定為 ON
。這樣可確保:
moc
輸出檔案在不同的建置設定上是相同的,當原始碼和/或建置目錄是符號連結時,
moc
輸出檔案將正確編譯。