Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mengakses dan Menggunakan Pembolehubah CMake dalam Kod Sumber C?
Membaca Pembolehubah CMake dalam Kod Sumber C
Ramai pembangun lebih suka menyimpan maklumat konfigurasi, seperti nombor versi, di lokasi pusat untuk memudahkan daripada pengurusan. CMake menyediakan mekanisme yang mudah untuk menentukan pembolehubah tersebut dalam fail konfigurasinya. Artikel ini meneroka cara untuk mengakses dan menggunakan pembolehubah ini dalam kod sumber C semasa penyusunan.
Mentakrifkan Pembolehubah CMake
Untuk menentukan pembolehubah CMake, gunakan arahan SET. Berikut ialah contoh yang mentakrifkan pembolehubah bernama LIBINTERFACE_VERSION dengan nilai 1:
SET(LIBINTERFACE_VERSION 1 CACHE INTEGER "Version of libInterface")
Meluluskan Pembolehubah kepada Kod C
Setelah pembolehubah CMake ditakrifkan, anda boleh jadikan ia tersedia untuk kod C menggunakan add_definitions atau configure_file arahan.
Menggunakan add_definitions
Arahan add_definitions ialah cara yang mudah dan mudah untuk menghantar pembolehubah CMake kepada kod C. Ia mencipta definisi prapemproses yang boleh digunakan dalam kod sumber.
add_definitions( -DVERSION_LIBINTERFACE=${LIBINTERFACE_VERSION} )
Ini akan mencipta definisi prapemproses VERSION_LIBINTERFACE dengan nilai LIBINTERFACE_VERSION, yang kemudiannya boleh digunakan dalam kod C.
Menggunakan configure_file
configure_file ialah pendekatan yang lebih serba boleh yang membolehkan anda mencipta templat fail pengepala dan menggunakan CMake untuk menggantikan pembolehubah ke dalamnya. Kaedah ini memberikan lebih fleksibiliti dan boleh digunakan untuk menjana berbilang fail pengepala dengan konfigurasi yang berbeza.
Mencipta Fail Pengepala Templat
Pertama, buat fail pengepala templat, seperti sebagai version_config.h.in, dengan kandungan berikut:
#ifndef VERSION_CONFIG_H #define VERSION_CONFIG_H // define your version_libinterface #define VERSION_LIBINTERFACE @LIBINTERFACE_VERSION@ #endif // VERSION_CONFIG_H
Templat ini mentakrifkan Makro prapemproses VERSION_LIBINTERFACE dengan nilai LIBINTERFACE_VERSION.
Menggunakan configure_file
Dalam fail CMakeLists.txt anda, gunakan configure_file untuk menjana fail pengepala version_config.h:
configure_file( version_config.h.in ${CMAKE_BINARY_DIR}/generated/version_config.h )Arahan ini akan menggantikan @LIBINTERFACE_VERSION@ pemegang tempat dengan nilai sebenar pembolehubah dan jana fail pengepala.
Termasuk Fail Pengepala Dijana
Akhir sekali, pastikan anda memasukkan version_config yang dijana. h fail pengepala dalam kod sumber C anda:#include <generated/version_config.h>Dengan salah satu kaedah ini, anda boleh mengakses dan menggunakan pembolehubah CMake dalam kod sumber C anda. Kedua-dua add_definitions dan configure_file menawarkan kelebihan berbeza bergantung pada keperluan khusus anda dan struktur projek.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses dan Menggunakan Pembolehubah CMake dalam Kod Sumber C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!