Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menguruskan Sertakan Direktori dan Ketergantungan Tajuk dengan Betul dalam 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!