Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah Saya Boleh Ubah Alih Output Binaan CMake ke Direktori 'bin' Berasingan?

Bagaimanakah Saya Boleh Ubah Alih Output Binaan CMake ke Direktori 'bin' Berasingan?

Susan Sarandon
Lepaskan: 2024-12-15 14:35:15
asal
172 orang telah melayarinya

How Can I Redirect CMake Build Outputs to a Separate 'bin' Directory?

Mengubah hala Output Binaan CMake ke Direktori 'bin'

Apabila membina projek dengan pemalam menggunakan CMake, binari dan pustaka yang disusun biasanya bertaburan dalam struktur direktori sumber. Untuk menyusun fail ini, adalah perlu untuk mengarahkan output CMake ke direktori yang berasingan, seperti './bin'.

Penyelesaian terletak pada menetapkan pembolehubah CMake yang sesuai untuk menentukan laluan output yang diingini. Mengikut nasihat Oleg, pembolehubah yang betul untuk diubah suai ialah CMAKE_RUNTIME_OUTPUT_DIRECTORY.

Dalam fail CMakeLists.txt akar, anda boleh menentukan direktori output seperti berikut:

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
Salin selepas log masuk

Ini akan menetapkan direktori output untuk arkib, perpustakaan dan binari masa jalan ke subdirektori 'lib' dan 'bin' subdirektori dalam direktori binari.

Sebagai alternatif, anda boleh menentukan direktori output pada asas setiap sasaran menggunakan perintah set_target_properties:

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"
)
Salin selepas log masuk

Pendekatan ini membolehkan anda menentukan direktori output yang berbeza untuk sasaran yang berbeza, memberikan kawalan yang lebih terperinci ke atas proses binaan.

Dalam kedua-dua kes, anda boleh menambah '_[CONFIG]' kepada pembolehubah atau nama sifat untuk menetapkan direktori output untuk konfigurasi tertentu. Nilai konfigurasi standard ialah DEBUG, RELEASE, MINSIZEREL dan RELWITHDEBINFO.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Ubah Alih Output Binaan CMake ke Direktori 'bin' Berasingan?. 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