Heim > Backend-Entwicklung > C++ > Wie kann ich Header-Verzeichnisse in meinen CMake-Projekten effektiv verwalten?

Wie kann ich Header-Verzeichnisse in meinen CMake-Projekten effektiv verwalten?

Mary-Kate Olsen
Freigeben: 2024-12-31 10:12:15
Original
603 Leute haben es durchsucht

How Can I Effectively Manage Header Directories in My CMake Projects?

Header-Verzeichnisse effektiv in CMake einbinden

Um CMake ordnungsgemäß zu signalisieren, dass ein Verzeichnis Header enthält, die einbezogen und verfolgt werden sollen, führen Sie die folgenden Schritte aus:

1 . Fügen Sie das Verzeichnis ein

target_include_directories(test PRIVATE ${YOUR_DIRECTORY})
Nach dem Login kopieren

Für ältere CMake-Versionen (2.8.10 oder niedriger):

include_directories(${YOUR_DIRECTORY})
Nach dem Login kopieren

2. Header-Dateien zur Quellliste hinzufügen

Header-Dateien als Abhängigkeiten in das aktuelle Ziel einbeziehen:

set(SOURCES file.cpp file2.cpp ${YOUR_DIRECTORY}/file1.h ${YOUR_DIRECTORY}/file2.h)
add_executable(test ${SOURCES})
Nach dem Login kopieren

Dadurch wird sichergestellt, dass die Header-Dateien als Abhängigkeiten im Makefile und anderen generierten Projektdateien aufgeführt werden .

Einschließen von Headern für mehrere Ziele

Wenn Sie dieselben Header in mehrere Ziele einschließen müssen Ziele:

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})
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich Header-Verzeichnisse in meinen CMake-Projekten effektiv verwalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage