【cmake】include_directories和target_include_directories
阿新 • • 發佈:2022-04-14
include_directories和target_include_directories
1、作用:
給原始檔新增標頭檔案搜尋路徑:將指定目錄新增到編譯器的標頭檔案搜尋路徑之下,指定的目錄被解釋成當前原始碼路徑的相對路徑。
2、差別:
2.1、include_directories:
當前CMakeList.txt中的所有目標以及所有在其呼叫點之後新增的子目錄中的所有目標將具有此標頭檔案搜尋路徑。
2.2、target_include_directories:
指定目標包含的標頭檔案路徑。
3、用法:
3.1、語法
include_directories([AFTER|BEFORE] [SYSTEM] dir1 [dir2 …])
include_directories(/usr1/dirs)
3.2 語法
target_include_directories(<target> [SYSTEM] [AFTER|BEFORE] <INTERFACE|PUBLIC|PRIVATE> [items1…])
例句:
target_include_directories(target_so PUBLIC /usr1/dirs)
2.3、<INTERFACE|PUBLIC|PRIVATE>使用依據:
INTERFACE:target對應的標頭檔案使用
PRIVATE:target對應的原始檔使用
PUBLIC:target對應的標頭檔案、原始檔都使用