Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Mengkonfigurasi CMake untuk Mengasingkan Binari dan Perpustakaan daripada Kod Sumber?

Bagaimana untuk Mengkonfigurasi CMake untuk Mengasingkan Binari dan Perpustakaan daripada Kod Sumber?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-17 14:09:10716semak imbas

How to Configure CMake to Separate Binaries and Libraries from Source Code?

Cara Mengkonfigurasi Direktori Output CMake untuk Binari

Untuk menyelesaikan isu di mana CMake menjana binari dan perpustakaan dalam hierarki direktori sumber, anda boleh ubah suai tetapan output CMake untuk menentukan destinasi khusus direktori.

Penyelesaian:

Untuk mengarahkan CMake meletakkan artifak yang disusun dalam direktori berasingan seperti "./bin", gunakan teknik berikut:

  1. Keluaran Global Direktori:

    set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
    set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
    set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
  2. Direktori Output Khusus Sasaran:

    set_target_properties(targets...
        PROPERTIES
        ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
        LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib"
        RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"
    )

Dalam kedua-dua senario , anda boleh menambahkan "_[CONFIG]" (cth., "_DEBUG") pada pembolehubah atau nama sifat untuk menyesuaikan direktori output bagi konfigurasi tertentu (cth., "Nyahpepijat").

Atas ialah kandungan terperinci Bagaimana untuk Mengkonfigurasi CMake untuk Mengasingkan Binari dan Perpustakaan daripada Kod Sumber?. 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