Condividi tramite


Attività ClangCompile

Nota

Questa attività è disponibile solo quando si usa il sistema di compilazione C++.

Esegue il wrapping dello strumento del compilatore Microsoft C++ clang.exe.

Parametri

Nella tabella seguente vengono descritti i parametri dell'attività ClangCompile.

Parametro Descrizione
AdditionalIncludeDirectories Parametro string[] facoltativo.

Specifica una o più directory da aggiungere al percorso di inclusione. Usare il punto e virgola (;) come delimitatore per più percorsi.

Usare -I[path].
AdditionalOptions Parametro string facoltativo.
BufferSecurityCheck Parametro string facoltativo.

Il controllo di sicurezza facilita il rilevamento di sovraccarichi del buffer di stack, un attacco comunemente tentato alla sicurezza di un programma.

Usare fstack-protector.
BuildingInIde Parametro bool facoltativo.
CLanguageStandard Parametro string facoltativo.

Determina lo standard del linguaggio C.

Usare std=[value] con il valore c89, c99, c11, gnu99 o gnu11.
ClangVersion Parametro string facoltativo.
CompileAs Parametro string facoltativo.

Specifica il linguaggio di compilazione per i file con estensione c e cpp. Il valore predefinito verrà rilevato in base all'estensione .c o .cpp.

Usare -x c, -x c++.
CppLanguageStandard Parametro string facoltativo.

Determina lo standard del linguaggio C++.

Usare std=[value] con il valore c++98, c++11, c++1y, gnu++98, gnu++11 o gnu++1y.
DataLevelLinking Parametro bool facoltativo.

Consente alle ottimizzazioni del linker di rimuovere i dati non usati creando ogni elemento dati in una sezione distinta.
DebugInformationFormat Parametro string facoltativo.

Specifica il tipo di informazioni di debug generate dal compilatore.

None: non produce informazioni di debug, quindi la compilazione può risultare più veloce (usare g0).
FullDebug: genera le informazioni di debug DWARF2 (usare g2 -gdwarf-2).
LineNumber: genera solo le informazioni sul numero di riga (usare gline-tables-only).
EnableNeonCodegen Parametro bool facoltativo.

Abilita la generazione di codice per hardware per operazioni con virgola mobile NEON. Si applica solo per l'architettura ARM.
ExceptionHandling Parametro string facoltativo.

Specifica il modello di gestione delle eccezioni che deve essere usato dal compilatore.

Disabled: disabilita la gestione delle eccezioni (usare fno-exceptions).
Enabled: abilita la gestione delle eccezioni (usare fexceptions).
UnwindTables: genera gli eventuali dati statici necessari senza influire sul codice generato (usare funwind-tables).
FloatABI Parametro string facoltativo.

Opzione da selezionare per scegliere l'ABI a virgola mobile.

Con soft il compilatore genera output contenente chiamate di libreria per operazioni a virgola mobile (usare mfloat-abi=soft).
softfp consente la generazione di codice con istruzioni a virgola mobile hardware, ma vengono comunque usate le convenzioni di chiamata soft-float (usare mfloat-abi=softfp).
hard consente la generazione di istruzioni a virgola mobile e usa le convenzioni di chiamata specifiche di FPU (usare mfloat-abi=hard).
ForcedIncludeFiles Parametro string[] facoltativo.

Uno o più file di inclusione il cui uso è forzato.

Usare -include [name].
FunctionLevelLinking Parametro bool facoltativo.

Consente al compilatore di assemblare le singole funzioni sotto forma di funzioni incluse nel pacchetto (COMDAT). Impostazione necessaria per le operazioni di modifica e continuazione.

Usare ffunction-sections.
GccToolChain Parametro string facoltativo.

Percorso della cartella della catena di strumenti GCC.
GNUMode Parametro bool facoltativo.

MSCompatibility Parametro bool facoltativo.

Abilitare la compatibilità completa di Microsoft C++.
MSCompatibilityVersion Parametro string facoltativo.

Valore delimitato da punti che rappresenta il numero di versione del compilatore Microsoft da restituire in _MSC_VER (0 = non definito; impostazione predefinita).
MSExtensions Parametro bool facoltativo.

Accetta alcuni costrutti non standard supportati dal compilatore Microsoft.
MSCompilerVersion Parametro string facoltativo.

Numero di versione del compilatore Microsoft da restituire in _MSC_VER (0 = non definito; impostazione predefinita).
MSVCErrorReport Parametro bool facoltativo.

Segnala gli errori che Visual Studio può usare per analizzare e ottenere informazioni su file e riga.
ObjectFileName Parametro string facoltativo.

Consente di specificare un nome usato per eseguire l'override del nome del file oggetto predefinito. Può essere un nome di file o di directory.

Usare /Fo[name].
OmitFramePointers Parametro bool facoltativo.

Disabilita la creazione di puntatori ai frame nello stack di chiamate.
Ottimizzazione Parametro string facoltativo.

Specifica il livello di ottimizzazione per l'applicazione.

Custom: consente di personalizzare l'ottimizzazione.
Disabled: disabilita l'ottimizzazione (usare O0).
MinSize: ottimizza in base alla dimensione (usare Os).
MaxSpeed: ottimizza in base alla velocità (usare O2).
Full: ottimizzazioni onerose (usare O3).
PositionIndependentCode Parametro bool facoltativo.

Genera codice indipendente dalla posizione per l'uso in una libreria condivisa.
PrecompiledHeader Parametro string facoltativo.

Abilita la creazione o l'uso di un'intestazione precompilata durante la compilazione.
PrecompiledHeaderFile Parametro string facoltativo.

Specifica un nome di file di intestazione da usare come file di intestazione precompilato. Questo file verrà aggiunto anche a File di inclusione imposti durante la compilazione.
PrecompiledHeaderOutputFileDirectory Parametro string facoltativo.

Specifica la directory per l'intestazione precompilato generato. Questa directory verrà aggiunta anche a Directory di inclusione aggiuntive durante la compilazione.
PrecompiledHeaderCompileAs Parametro string facoltativo.

Selezionare l'opzione del linguaggio di compilazione per il file di intestazione precompilato.

Usare -x c-header, -x c++-header.
PreprocessorDefinitions Parametro string[] facoltativo.

Definisce i simboli di pre-elaborazione per il file di origine.

Usare -D.
RuntimeLibrary Parametro string facoltativo.

Specifica la libreria di runtime per il collegamento.

Usare le opzioni MSVC /MT, /MTd, /MD, /MDd.

MultiThreaded fa in modo che l'applicazione usi la versione statica multithread della libreria di runtime.
MultiThreadedDebug definisce _DEBUG e _MT. Fa inoltre in modo che il compilatore inserisca il nome della libreria LIBCMTD.lib nel file .obj affinché il linker utilizzi LIBCMTD.lib per risolvere i simboli esterni.
MultiThreadedDLL fa in modo che l'applicazione usi la versione specifica per multithread e DLL della libreria di runtime. Definisce _MT e _DLL e fa inoltre in modo che il compilatore inserisca il nome della libreria MSVCRT.lib nel file con estensione obj.
MultiThreadedDebugDLL definisce _DEBUG, _MT e _DLL e fa in modo che l'applicazione usi la versione specifica per multithread e DLL di debug della libreria di runtime. Fa inoltre in modo che il compilatore inserisca il nome della libreria MSVCRTD.lib nel file .obj.
RuntimeTypeInfo Parametro bool facoltativo.

Aggiunge codice per il controllo dei tipi di oggetto C++ in fase di esecuzione (informazioni sui tipi in fase di esecuzione).

Usare frtti, fno-rtti.
ShowIncludes Parametro bool facoltativo.

Indica al compilatore di generare un elenco dei file di inclusione.

Usare -H.
Sources Parametro ITaskItem [] obbligatorio.
StrictAliasing Parametro bool facoltativo.

Presuppone le regole di aliasing più restrittive. Un oggetto di un certo tipo non potrà mai risiedere nello stesso indirizzo di un oggetto di un tipo diverso.
Sysroot Parametro string facoltativo.

Percorso della cartella della directory radice per intestazioni e librerie.
TargetArch Parametro string facoltativo.

Architettura di destinazione.
ThumbMode Parametro string facoltativo.

Generare il codice che viene eseguito per la microarchitettura thumb. Si applica solo per l'architettura ARM.

Thumb, genera codice Thumb (usare mthumb).
ARM, genera codice Arm (usare marm).
Disabled, opzione non applicabile per la piattaforma selezionata.
TrackerLogDirectory Parametro string facoltativo.

Directory dei log di Tracker.
TreatWarningAsError Parametro bool facoltativo.

Considera tutti gli avvisi del compilatore come errori.

Per un nuovo progetto, potrebbe essere preferibile usare /WX in tutte le compilazioni. La risoluzione degli avvisi garantirà il minor numero possibile di errori del codice di difficile individuazione.
UndefinePreprocessorDefinitions Parametro string[] facoltativo.

Rimuove una o più definizioni per il preprocessore.

Usare -U [macro].
UndefineAllPreprocessorDefinitions Parametro bool facoltativo.

Rimuove tutti i valori precedentemente definiti per il preprocessore.

Usare -undef.
UseMultiToolTask Parametro bool facoltativo.

Compilazione a più processori.
UseShortEnums Parametro bool facoltativo.

Il tipo enum usa solo il numero di byte richiesti dall'insieme di possibili valori di input.
Verbose Parametro bool facoltativo.

Visualizza i comandi da eseguire e usa l'output dettagliato.
WarningLevel Parametro string facoltativo.

Specifica il grado di severità del controllo effettuato dal compilatore per trovare gli errori del codice. È possibile contrassegnare altre opzioni direttamente da Opzioni aggiuntive (usare /w, /Weverything).

TurnOffAllWarnings, disabilita tutti gli avvisi del compilatore (usare w).
EnableAllWarnings, abilita tutti gli avvisi, inclusi quelli disabilitati per impostazione predefinita (usare Wall).

Vedi anche

Attività MSBuild