Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menguruskan Sertakan Direktori dan Ketergantungan Tajuk dengan Betul dalam CMake?

Bagaimana untuk Menguruskan Sertakan Direktori dan Ketergantungan Tajuk dengan Betul dalam CMake?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-19 15:43:10566semak imbas

How to Properly Manage Include Directories and Header Dependencies in CMake?

Menambah Sertakan Direktori dengan CMake dengan betul

Dalam CMake, mengurus termasuk direktori dan kebergantungan pengepala adalah penting untuk penyusunan projek yang berkesan. Artikel ini menangani persoalan tentang cara memberi isyarat dengan betul kepada CMake bahawa direktori tertentu mengandungi pengepala untuk disertakan dan dijejaki oleh Makefile yang dijana.

Menambah Direktori Sertakan

Untuk memasukkan direktori yang mengandungi pengepala, gunakan arahan berikut:

target_include_directories(test PRIVATE ${YOUR_DIRECTORY})

Jika anda menggunakan CMake yang lebih lama versi yang tidak menyokong target_include_directories, gunakan legasi include_directories sebaliknya:

include_directories(${YOUR_DIRECTORY})

Ketergantungan Pengepala Penjejakan

Untuk menjejak kebergantungan pengepala, anda mesti menambah fail pengepala ke senarai fail sumber untuk sasaran semasa:

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

Dengan berbuat demikian, fail pengepala akan muncul sebagai kebergantungan dalam Makefile dan fail projek lain yang dijana, memastikan kemasukannya semasa penyusunan.

Menggunakan Pengepala untuk Berbilang Sasaran

Untuk menggunakan pengepala yang sama fail merentas berbilang sasaran, ikuti langkah berikut:

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})

Pendekatan ini memastikan semua sasaran mempunyai akses kepada yang diperlukan pengepala dan kebergantungan pengepala dijejaki dengan sewajarnya. Dengan mengikut langkah-langkah ini, anda boleh mengurus sertakan direktori dan kebergantungan pengepala dengan berkesan dalam projek CMake anda.

Atas ialah kandungan terperinci Bagaimana untuk Menguruskan Sertakan Direktori dan Ketergantungan Tajuk dengan Betul dalam CMake?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn