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)
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" )
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!