Rumah >pembangunan bahagian belakang >C++ >Mengapa Projek Berbilang Fail C Saya Tidak Akan Dibina dalam Kod VS?
Apabila bekerja dengan projek berbilang fail C dalam Kod VS, pengguna mungkin menghadapi ralat binaan yang berkaitan dengan kehilangan fail sumber. Satu senario biasa ialah apabila pengkompil gagal mencari fail .cpp tertentu, walaupun fail pengepala yang sepadan boleh diakses.
Penerangan Isu:
Pengguna tidak dapat bina program C yang terdiri daripada berbilang fail .cpp menggunakan pengkompil GCC dalam Kod VS pada Ubuntu 17.10. Program menyusun tanpa isu dalam IDE lain, tetapi konfigurasi tasks.json dalam Kod VS nampaknya menyebabkan masalah.
Memahami Konfigurasi tasks.json:
The Fail tasks.json digunakan untuk mentakrifkan tugas untuk Kod VS, termasuk tugas membina. Dalam kes tertentu, tasks.json mentakrifkan satu tugas binaan berlabel "Bina." Tugasan menggunakan arahan GCC yang menyusun hanya fail main.cpp, meninggalkan fail Cat.cpp.
Menyelesaikan Isu:
Untuk membetulkan ini, pengguna perlu mengubah suai konfigurasi tasks.json untuk mengarahkan pengkompil untuk memasukkan semua fail .cpp dalam proses binaan. Coretan kod berikut hendaklah ditambahkan pada fail tasks.json:
"label": "g++.exe build active file", "args": [ "-g", "${fileDirname}\**.cpp", "-o", "${fileDirname}\${fileBasenameNoExtension}.exe", ],
Konfigurasi ini memberitahu pengkompil untuk memasukkan semua fail .cpp dalam direktori semasa dan subdirektorinya menggunakan corak glob "**.cpp ."
Konfigurasi Pelancaran:
Untuk memastikan bahawa tugas pra-bina dilaksanakan sebelum melancarkan program, tambah baris berikut pada konfigurasi launch.json:
"preLaunchTask": "g++.exe build active file"
Nota Tambahan:
Jika fail sumber disusun dalam folder berasingan, pengkompil mungkin masih tidak dapat mencarinya. Dalam kes sedemikian, pastikan laluan termasuk yang sesuai ditentukan dalam tetapan projek.
Atas ialah kandungan terperinci Mengapa Projek Berbilang Fail C Saya Tidak Akan Dibina dalam Kod VS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!