include_directories¶
將包含目錄新增至建置。
include_directories([AFTER|BEFORE] [SYSTEM] dir1 [dir2 ...])
將給定的目錄新增至編譯器用於搜尋包含檔的路徑中。相對路徑會被解讀為相對於目前的原始碼目錄。
包含目錄會被新增至目前 CMakeLists
檔案的 INCLUDE_DIRECTORIES
目錄屬性中。它們也會被新增至目前 CMakeLists
檔案中每個目標的 INCLUDE_DIRECTORIES
目標屬性中。目標屬性值是產生器所使用的值。
預設情況下,指定的目錄會附加到目前的目錄清單中。這個預設行為可以透過將 CMAKE_INCLUDE_DIRECTORIES_BEFORE
設定為 ON
來更改。透過明確地使用 AFTER
或 BEFORE
,您可以選擇附加或前置,而與預設值無關。
如果給定 SYSTEM
選項,編譯器將被告知這些目錄在某些平台上被視為系統包含目錄。發出此設定訊號可能會達到某些效果,例如編譯器跳過警告,或者在相依性計算中不考慮這些固定安裝的系統檔案 - 請參閱編譯器文件。
include_directories
的參數可以使用產生器運算式,語法為 $<...>
。 有關可用的運算式,請參閱 cmake-generator-expressions(7)
文件說明文件。 有關定義建置系統屬性的更多資訊,請參閱 cmake-buildsystem(7)
文件說明文件。
注意
建議使用 target_include_directories()
命令,將包含目錄新增至個別目標,並選擇性地將其傳播/匯出到相依項。