Bagikan melalui


Tugas ClangCompile

Catatan

Tugas ini hanya tersedia saat menggunakan sistem build C++.

Membungkus alat pengkompilasi Microsoft C++, clang.exe.

Parameter

Tabel berikut ini menjelaskan parameter tugas ClangCompile.

Parameter Deskripsi
AdditionalIncludeDirectories Parameter string[] opsional.

Menentukan satu atau beberapa direktori untuk ditambahkan ke jalur penyertaan; pisahkan dengan titik koma jika lebih dari satu.

Gunakan -I[path].
AdditionalOptions Parameter string opsional.
BufferSecurityCheck Parameter string opsional.

Pemeriksaan Keamanan membantu mendeteksi stack-buffer yang berjalan berlebihan, serangan umum yang dicoba terhadap keamanan program.

Gunakan fstack-protector.
BuildingInIde Parameter bool opsional.
CLanguageStandard Parameter string opsional.

Menentukan standar bahasa C.

Gunakan std=[value] dengan nilai c89, c99, c11, gnu99, atau gnu11.
ClangVersion Parameter string opsional.
CompileAs Parameter string opsional.

Pilih opsi bahasa kompilasi untuk file .c dan .cpp. Default akan mendeteksi berdasarkan ekstensi .c atau .cpp.

Gunakan -x c, -x c++.
CppLanguageStandard Parameter string opsional.

Menentukan standar bahasa C++.

Gunakan std=[value] dengan nilai c++98, c++11, c++1y, gnu++98, gnu++11, atau gnu++1y.
DataLevelLinking Parameter bool opsional.

Memungkinkan pengoptimalan linker untuk menghapus data yang tidak digunakan dengan memancarkan setiap item data di bagian terpisah.
DebugInformationFormat Parameter string opsional.

Menentukan jenis informasi penelusuran kesalahan yang dihasilkan oleh pengompilasi.

Tidak ada, tidak menghasilkan informasi debug, jadi kompilasi mungkin lebih cepat (gunakan g0).
FullDebug, menghasilkan informasi debug DWARF2 (gunakan g2 -gdwarf-2).
LineNumber, menghasilkan informasi Nomor Baris saja (gunakan gline-tables-only).
EnableNeonCodegen Parameter bool opsional.

Mengaktifkan pembuatan kode untuk perangkat keras floating point NEON. Ini hanya berlaku untuk arsitektur arm.
ExceptionHandling Parameter string opsional.

Menentukan model penanganan pengecualian yang akan digunakan oleh pengkompilasi.

Dinonaktifkan, nonaktifkan penanganan pengecualian (gunakan fno-exceptions).
Diaktifkan, aktifkan penanganan pengecualian (gunakan fexceptions).
UnwindTables, menghasilkan data statis yang diperlukan, tetapi tidak memengaruhi kode yang dihasilkan (gunakan funwind-tables).
FloatABI Parameter string opsional.

Opsi pilihan untuk memilih ABI titik mengambang.

lunak, menyebabkan kompilator menghasilkan output yang berisi panggilan pustaka untuk operasi floating-point (gunakan mfloat-abi=soft).
softfp, memungkinkan pembuatan kode menggunakan instruksi titik mengambang perangkat keras, tetapi masih menggunakan konvensi panggilan soft-float (gunakan mfloat-abi=softfp).
keras, memungkinkan pembuatan instruksi floating-point dan menggunakan konvensi panggilan khusus FPU (gunakan mfloat-abi=hard).
ForcedIncludeFiles Parameter string[] opsional.

Satu atau lebih file yang disertakan secara paksa.

Gunakan -include [name].
FunctionLevelLinking Parameter bool opsional.

Memungkinkan pengkompilasi untuk mengemas fungsi individual dalam bentuk fungsi kemasan (COMDAT). Diperlukan untuk mengedit dan terus bekerja.

Gunakan ffunction-sections.
GccToolChain Parameter string opsional.

Jalur folder ke Gcc Tool Chain.
GNUMode Parameter bool opsional.

MSCompatibility Parameter bool opsional.

Aktifkan kompatibilitas Microsoft C++ penuh.
MSCompatibilityVersion Parameter string opsional.

Nilai yang dipisahkan titik yang mewakili nomor versi pengkompilasi Microsoft untuk dilaporkan dalam _MSC_VER (0 = tidak menentukannya (default)).
MSExtensions Parameter bool opsional.

Terima beberapa konstruksi non-standar yang didukung oleh pengkompilasi Microsoft.
MSCompilerVersion Parameter string opsional.

Nomor versi pengkompilasi Microsoft untuk dilaporkan dalam _MSC_VER (0 = jangan tentukan (default)).
MSVCErrorReport Parameter bool opsional.

Melaporkan kesalahan yang dapat digunakan Visual Studio untuk mengurai informasi file dan baris.
ObjectFileName Parameter string opsional.

Menentukan nama untuk mengganti nama file objek default; dapat berupa nama file atau direktori.

Gunakan /Fo[name].
OmitFramePointers Parameter bool opsional.

Menekan pembuatan pointer bingkai pada tumpukan panggilan.
Pengoptimalan Parameter string opsional.

Menentukan tingkat pengoptimalan untuk aplikasi.

Kustom, Pengoptimalan kustom.
Dinonaktifkan, nonaktifkan pengoptimalan (gunakan O0).
MinSize, optimalkan untuk ukuran (gunakan Os).
MaxSpeed, optimalkan untuk kecepatan (gunakan O2).
Penuh, pengoptimalan yang mahal (gunakan O3).
PositionIndependentCode Parameter bool opsional.

Hasilkan Kode Independen Posisi (PIC) untuk digunakan dalam pustaka bersama.
PrecompiledHeader Parameter string opsional.

Memungkinkan pembuatan atau penggunaan header yang telah dikompilasikan sebelumnya selama build.
PrecompiledHeaderFile Parameter string opsional.

Menentukan nama file header yang akan digunakan untuk file header yang telah dikommpilasikan sebelumnya. File ini juga akan ditambahkan ke File Sertakan Paksa selama build.
PrecompiledHeaderOutputFileDirectory Parameter string opsional.

Menentukan direktori untuk header yang dibuat sebelumnya. Direktori ini juga akan ditambahkan ke Direktori Include Tambahan selama build.
PrecompiledHeaderCompileAs Parameter string opsional.

Pilih opsi kompilasi bahasa untuk file header yang telah dikompilasi sebelumnya.

Gunakan -x c-header, -x c++-header.
PreprocessorDefinitions Parameter string[] opsional.

Menentukan simbol prapemrosesan untuk file sumber Anda.

Gunakan -D.
RuntimeLibrary Parameter string opsional.

Tentukan pustaka runtime untuk penautan.

Gunakan sakelar MSVC /MT, /MTd, /MD, /MDd.

MultiThreaded, menyebabkan aplikasi Anda menggunakan versi statis multithread dari pustaka run-time.
MultiThreadedDebug, mendefinisikan _DEBUG dan _MT. Opsi ini juga menyebabkan pengkompilasi menempatkan nama pustaka LIBCMTD.lib ke dalam file .obj sehingga linker akan menggunakan LIBCMTD.lib untuk menyelesaikan simbol eksternal.
MultiThreadedDLL, menyebabkan aplikasi Anda menggunakan versi khusus multithread dan DLL dari pustaka run-time. Menentukan _MT dan _DLL dan menyebabkan pengkompilasi menempatkan nama pustaka MSVCRT.lib ke dalam file .obj.
MultiThreadedDebugDLL, mendefinisikan _DEBUG, _MT, dan _DLL dan menyebabkan aplikasi Anda menggunakan versi multithread debug dan khusus DLL dari pustaka run-time. Ini juga menyebabkan pengkompilasi menempatkan nama pustaka MSVCRTD.lib ke dalam file .obj.
RuntimeTypeInfo Parameter bool opsional.

Menambahkan kode untuk memeriksa jenis objek C++ pada durasi proses (informasi jenis runtime).

Gunakan frtti, fno-rtti.
ShowIncludes Parameter bool opsional.

Menghasilkan daftar file yang termasuk dengan output pengompilasi.

Gunakan -H.
Sumber Parameter ITaskItem[] yang diperlukan.
StrictAliasing Parameter bool opsional.

Mengasumsikan aturan aliasing yang paling ketat. Objek dari satu jenis tidak akan pernah dianggap berada di alamat yang sama sebagai objek dari jenis yang berbeda.
Sysroot Parameter string opsional.

Jalur folder ke direktori akar untuk header dan pustaka.
TargetArch Parameter string opsional.

Arsitektur Target.
ThumbMode Parameter string opsional.

Hasilkan kode yang dijalankan untuk mikroarsitektur jempol. Ini hanya berlaku untuk arsitektur arm.

Thumb, hasilkan kode Thumb (gunakan mthumb).
ARM, buat kode Arm (gunakan marm).
Dinonaktifkan, opsi tidak berlaku untuk platform yang dipilih.
TrackerLogDirectory Parameter string opsional.

Direktori Log Pelacak.
TreatWarningAsError Parameter bool opsional.

Perlakukan semua peringatan pengompilasi sebagai kesalahan.

Untuk proyek baru, mungkin yang terbaik adalah menggunakan /WX di semua kompilasi; menyelesaikan semua peringatan akan memastikan kemungkinan cacat kode yang sulit ditemukan sekecil mungkin.
UndefinePreprocessorDefinitions Parameter string[] opsional.

Menyebutkan satu atau beberapa praprosesor yang tidak ditentukan.

Gunakan -U [macro].
UndefineAllPreprocessorDefinitions Parameter bool opsional.

Tidak menentukan semua nilai pra-prosesor yang ditentukan sebelumnya.

Gunakan -undef.
UseMultiToolTask Parameter bool opsional.

Kompilasi Multi-prosesor.
UseShortEnums Parameter bool opsional.

Jenis enum hanya menggunakan byte sebanyak yang diperlukan oleh kumpulan input nilai yang mungkin.
Verbose Parameter bool opsional.

Tampilkan perintah untuk menjalankan dan menggunakan output verbose.
WarningLevel Parameter string opsional.

Pilih seberapa ketat Anda ingin kompiler tentang kesalahan kode. Bendera lain harus ditambahkan langsung ke Opsi Tambahan (se /w, /Weverything).

TurnOffAllWarnings, menonaktifkan semua peringatan kompilator (gunakan w).
EnableAllWarnings, memungkinkan semua peringatan, termasuk yang dinonaktifkan secara default (gunakan Wall).

Lihat juga

Referensi tugas