CMake: Menavigasi Berbilang Penyusun untuk Satu Bahasa
CMake mematuhi prinsip menetapkan satu CMAKE_CXX_COMPILER tunggal untuk semua fail sumber C dalam Fail CMakeLists.txt. Pendekatan ini menimbulkan cabaran apabila cuba menggabungkan hos dan kompilasi silang dalam satu fail CMakeLists.txt.
Dilema: Berbilang Penyusun untuk Bahasa yang Sama
Seperti yang soalan asal, pokok isu terletak pada mencari penyelesaian untuk menggunakan berbilang penyusun untuk bahasa yang sama, khususnya C .
Kompromi: Pilihan Terhad
Malangnya , reka bentuk CMake tidak mudah memenuhi keperluan ini. CMake mengekalkan satu set sifat pengkompil yang digunakan untuk semua sasaran dalam fail CMakeLists.txt. Akibatnya, untuk menggunakan berbilang penyusun, adalah perlu untuk melaksanakan CMake dua kali.
Alternatif: Perintah Tersuai atau Fail Berasingan
Satu penyelesaian melibatkan penggunaan arahan tersuai, pada asasnya mencipta skrip shell yang dimuliakan. Walau bagaimanapun, pendekatan ini menyimpang daripada objektif yang diingini.
Penyelesaian yang lebih bersih memerlukan pengasingan proses penyusunan kepada fail CMakeLists.txt yang berbeza. Walaupun ia menghalang hubungan antara seni bina yang berbeza, ia menghapuskan keperluan untuk kod berlebihan. Untuk mengekalkan konsistensi, bahagian biasa skrip CMake boleh diekstrak ke dalam fail berasingan dan disertakan melalui fungsi include().
Kelemahan: Kemudahan kepada Kerumitan
Yang utama kelemahan pendekatan ini ialah kehilangan kompilasi arahan tunggal. Untuk mengurangkan ini, skrip pembalut boleh dibuat dalam bahasa skrip pilihan untuk menggunakan perintah CMake yang diperlukan.
Atas ialah kandungan terperinci ## Bagaimanakah Saya Boleh Menggunakan Berbilang Penyusun untuk C dalam Projek CMake Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!