使用CMake 正確添加包含目錄
在CMake 中,管理包含目錄和標頭依賴項對於有效的專案編譯至關重要。本文解決如何正確向 CMake 發出訊號,表示特定目錄包含要由產生的 Makefile 包含和追蹤的標頭。
新增包含目錄
要包含包含標頭的目錄,請使用以下指令:
target_include_directories(test PRIVATE ${YOUR_DIRECTORY})
如果您使用的是較舊的CMake 版本不支援target_include_directories,請使用舊的include_directories:
include_directories(${YOUR_DIRECTORY})
追蹤標頭依賴關係
要追蹤標頭依賴關係,您必須將頭檔新增至目前目標的來源檔案清單:
set(SOURCES file.cpp file2.cpp ${YOUR_DIRECTORY}/file1.h ${YOUR_DIRECTORY}/file2.h) add_executable(test ${SOURCES})
透過這樣做,頭檔將在Makefile和其他產生的專案檔案中顯示為依賴項,確保在編譯期間包含它們。
對多個目標使用標頭
在多個目標中使用相同的頭文件目標,請按照以下步驟操作:
set(HEADER_FILES ${YOUR_DIRECTORY}/file1.h ${YOUR_DIRECTORY}/file2.h) add_library(mylib libsrc.cpp ${HEADER_FILES}) target_include_directories(mylib PRIVATE ${YOUR_DIRECTORY}) add_executable(myexec execfile.cpp ${HEADER_FILES}) target_include_directories(myexec PRIVATE ${YOUR_DIRECTORY})
此方法可確保所有目標都可以存取必要的標頭,並且追蹤標頭依賴項適當地。透過執行下列步驟,您可以有效管理 CMake 專案中的包含目錄和標頭相依性。
以上是如何正確管理CMake中的包含目錄和頭檔相依性?的詳細內容。更多資訊請關注PHP中文網其他相關文章!