Bagaimana untuk Mengakses Pembolehubah CMake dalam Kod Sumber C?

Linda Hamilton
Lepaskan: 2024-11-02 16:23:02
asal
971 orang telah melayarinya

How to Access CMake Variables in C   Source Code?

Mengakses Pembolehubah CMake dalam Kod Sumber C

Masalah:
Bagaimanakah pembolehubah CMake, seperti LIBINTERFACE_VERSION, boleh diakses dan digunakan dalam kod sumber C?

Jawapan:

Pilihan 1: Menggunakan add_definitions

  • Lepasi pembolehubah CMake sebagai definisi menggunakan add_definitions().
  • Contoh:

    <code class="cmake">add_definitions( -DVERSION_LIBINTERFACE=${LIBINTERFACE_VERSION} )</code>
    Salin selepas log masuk
  • Ini membolehkan pembolehubah CMake ditakrifkan dalam kod C sebagai makro (#define).

Pilihan 2: Menggunakan configure_file dengan templat fail pengepala

  • Buat templat fail pengepala yang mengandungi pembolehubah CMake rujukan.
  • Contoh:

    <code class="cmake">// version_config.h.in
    #ifndef VERSION_CONFIG_H
    #define VERSION_CONFIG_H
    
    // define your version_libinterface
    #define VERSION_LIBINTERFACE @LIBINTERFACE_VERSION@
    
    // alternatively you could add your global method getLibInterfaceVersion here
    unsigned int getLibInterfaceVersion()
    {
      return @LIBINTERFACE_VERSION@;
    }
    
    #endif // VERSION_CONFIG_H</code>
    Salin selepas log masuk
  • Gunakan configure_file() untuk menjana fail pengepala menggantikan pembolehubah CMake dengan nilainya.
  • Contoh:

    <code class="cmake">configure_file( version_config.h.in ${CMAKE_BINARY_DIR}/generated/version_config.h )
    include_directories( ${CMAKE_BINARY_DIR}/generated/ ) # Make sure it can be included...</code>
    Salin selepas log masuk
  • Sertakan fail pengepala yang dijana dalam kod sumber C.

Contoh Penggunaan:

<code class="cpp">// Assuming version_config.h is included
std::string version = VERSION_LIBINTERFACE;</code>
Salin selepas log masuk

Nota:
Kaedah configure_file() adalah lebih meluas kerana ia membenarkan pembolehubah atau takrifan tambahan ditambahkan pada fail pengepala yang dijana.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Pembolehubah CMake dalam Kod Sumber C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!