IngleseFranceseSpagnolo

Ad


Favicon di OnWorks

clang-3.5 - Online nel cloud

Esegui clang-3.5 nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando clang-3.5 che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


clang: il compilatore Clang C, C++ e Objective-C

SINOSSI


fragore [-c|-S|-E] -std=Standard -g
[-O0|-O1|-O2|-O3|- Veloce|-Voi|-Oz|-O|-O4]
-Wavvertimenti... -pedante
-Idir... -Ldir...
-Dmacro[=definizione]
-fopzione funzionalità...
-mopzione macchina...
-o file di uscita
-stdlib=biblioteca
nomi di file di input

DESCRIZIONE


fragore è un compilatore C, C++ e Objective-C che comprende preelaborazione, analisi,
ottimizzazione, generazione di codice, assemblaggio e collegamento. A seconda della modalità di alto livello
viene passata l'impostazione, Clang si fermerà prima di eseguire un collegamento completo. Mentre Clang è altamente
integrata, è importante comprendere le fasi della compilazione, per capire come fare
invocarlo. Queste fasi sono:

Guidatore
I fragore eseguibile è in realtà un piccolo driver che controlla l'esecuzione complessiva
di altri strumenti come il compilatore, l'assemblatore e il linker. In genere non è necessario
per interagire con il driver, ma lo usi in modo trasparente per eseguire gli altri strumenti.

Pre-elaborazione
Questa fase gestisce la tokenizzazione del file sorgente di input, l'espansione della macro, #include
espansione e gestione di altre direttive del preprocessore. L'output di questa fase è
tipicamente chiamato ".i" (per C), ".ii" (per C++), ".mi" (per Objective-C) o ".mii"
(per Objective-C++).

parsing ed Semantico Analisi
Questa fase analizza il file di input, traducendo i token del preprocessore in un albero di analisi.
Una volta sotto forma di albero parser, applica l'analisi semantica ai tipi di calcolo per
anche le espressioni e determinare se il codice è ben formato. Questa fase è
responsabile della generazione della maggior parte degli avvisi del compilatore e degli errori di analisi. IL
l'output di questa fase è un "albero sintattico astratto" (AST).

Code Generazione ed OTTIMIZZAZIONE
Questa fase traduce un AST in codice intermedio di basso livello (noto come "LLVM IR") e
infine al codice macchina. Questa fase è responsabile dell'ottimizzazione del generato
codice e gestione della generazione di codice specifico per il target. L'output di questa fase è
tipicamente chiamato file ".s" o file "assembly".

Clang supporta anche l'uso di un assemblatore integrato, in cui è presente il generatore di codice
produce direttamente i file oggetto. Ciò evita il sovraccarico derivante dalla generazione del file ".s".
e di chiamare l'assemblatore di destinazione.

Assembler
Questa fase esegue l'assemblatore di destinazione per tradurre l'output del compilatore in un file
file oggetto di destinazione. L'output di questa fase è generalmente chiamato file ".o" o
file "oggetto".

link
Questa fase esegue il linker di destinazione per unire più file oggetto in un file eseguibile o
libreria dinamica. L'output di questa fase è generalmente chiamato "a.out", ".dylib" o
".so".

Il compilatore Clang supporta un gran numero di opzioni per controllare ciascuna di queste fasi. In
Oltre alla compilazione del codice, Clang supporta anche altri strumenti:

clangore statica Analyzer

Il Clang Static Analyser è uno strumento che scansiona il codice sorgente per cercare di trovare bug
analisi del codice. Questo strumento utilizza molte parti di Clang ed è integrato nello stesso driver.
Perfavore guardahttp://clang-analyzer.llvm.org> per maggiori dettagli su come utilizzare il file statico
analizzatore.

VERSIONI


Stage Selezione Opzioni
-E Esegui la fase del preprocessore.

-fsintassi solo
Eseguire le fasi di preprocessore, parser e controllo del tipo.

-S Esegui le fasi precedenti, nonché le fasi di generazione e ottimizzazione LLVM e gli obiettivi
generazione di codice specifico, producendo un file di assembly.

-c Esegui tutto quanto sopra, più l'assemblatore, generando un file oggetto ".o" di destinazione.

no palcoscenico prodotti opzione
Se non viene specificata alcuna opzione di selezione della fase, verranno eseguite tutte le fasi precedenti e il linker lo sarà
eseguire per combinare i risultati in un eseguibile o in una libreria condivisa.

Lingua Selezione ed Moda Opzioni
-x Lingua
Tratta i file di input successivi come aventi tipo Lingua.

-std=Lingua
Specificare lo standard del linguaggio per cui compilare.

-stdlib=biblioteca
Specificare la libreria standard C++ da utilizzare; le opzioni supportate sono libstdc++ e libc++.

-ansi
Uguale a -std=c89.

-ObjC++
Tratta i file di input di origine come input Objective-C++.

-ObjC
Tratta i file di input di origine come input Objective-C.

-trigrafie
Abilita i trigrafi.

-autoportante
Indicare che il file deve essere compilato per un sistema indipendente, non ospitato,
ambiente.

-fno-integrato
Disabilita la gestione speciale e le ottimizzazioni delle funzioni integrate come strlen e
malloc.

-fmath-errno
Indica che le funzioni matematiche devono essere trattate come aggiornamento errno.

-fpascal-stringhe
Abilita il supporto per le stringhe in stile Pascal con "\pfoo".

-fms-estensioni
Abilita il supporto per le estensioni Microsoft.

-fmsc-versione=
Imposta _MSC_VER. Il valore predefinito è 1300 su Windows. Non impostare altrimenti.

-fborland-estensioni
Abilita il supporto per le estensioni Borland.

-fwritable-strings
Rendi scrivibili tutti i valori letterali stringa predefiniti. Ciò disabilita l'unicità delle stringhe e
altre ottimizzazioni.

-conversioni-vettoriali-di-lino
Consenti regole di controllo del tipo sciolto per conversioni vettoriali implicite.

-fblocchi
Abilita la funzione lingua "Blocchi".

-fobjc-gc-solo
Indica che il codice Objective-C deve essere compilato in modalità solo GC, che funziona solo
quando la Garbage Collection Objective-C è abilitata.

-fobjc-gc
Indica che il codice Objective-C deve essere compilato in modalità GC ibrida, che funziona con
sia in modalità GC che non GC.

-fobjc-abi-versione=versione
Seleziona la versione ABI Objective-C da utilizzare. Le versioni disponibili sono 1 (legacy "fragile"
ABI), 2 (ABI non fragile 1) e 3 (ABI non fragile 2).

-fobjc-nonfragile-abi-versione=versione
Seleziona la versione ABI non fragile Objective-C da utilizzare per impostazione predefinita. Sarà solo questo
utilizzato come ABI Objective-C quando l'ABI non fragile è abilitata (tramite
-fobjc-nonfragile-abi, o perché è l'impostazione predefinita della piattaforma).

-fobjc-nonfragile-abi
Abilita l'uso dell'ABI non fragile Objective-C. Sulle piattaforme per le quali questo è il file
ABI predefinita, può essere disabilitata con -fno-objc-nonfragile-abi.

Target Selezione Opzioni
Clang supporta pienamente la compilazione incrociata come parte intrinseca del suo design. A seconda di
come è configurata la tua versione di Clang, potrebbe supportare un numero di cross
compilatori o possono supportare solo un target nativo.

-arco architettura
Specificare l'architettura per cui creare.

-mmacosx-versione-min=versione
Quando crei per Mac OS X, specifica la versione minima supportata dalla tua applicazione.

-versione-microfono-min
Quando crei per il sistema operativo iPhone, specifica la versione minima supportata dal tuo
applicazione.

-marzo=cpu
Specificare che Clang deve generare codice per uno specifico membro della famiglia di processori e
Dopo. Ad esempio, se specifichi -march=i486, il compilatore può generare
istruzioni valide sui processori i486 e successivi, ma che potrebbero non esistere
quelli precedenti.

Code Generazione Opzioni
-O0 -O1 -O2 -O3 - Veloce -Voi -Oz -O -O4
Specifica quale livello di ottimizzazione utilizzare:

-O0 Significa "nessuna ottimizzazione": questo livello compila più velocemente e genera di più
codice debuggabile.

-O1 Da qualche parte tra -O0 ed -O2.

-O2 Livello moderato di ottimizzazione che consente la maggior parte delle ottimizzazioni.

-O3 Come -O2, tranne per il fatto che consente ottimizzazioni che richiedono più tempo per essere eseguite o altro
potrebbe generare codice più grande (nel tentativo di far funzionare il programma più velocemente).

- Veloce
Abilita tutte le ottimizzazioni da -O3 insieme ad altre ottimizzazioni aggressive
che potrebbero violare il rigoroso rispetto degli standard linguistici.

-Voi Come -O2 con ottimizzazioni aggiuntive per ridurre la dimensione del codice.

-Oz Come -Voi (e quindi -O2), ma riduce ulteriormente la dimensione del codice.

-O Equivalente a -O2.

-O4 e più in alto
Attualmente equivalente a -O3

-g Genera informazioni di debug. Tieni presente che le informazioni di debug di Clang funzionano meglio su -O0.

-fstandalone-debug -fno-standalone-debug
Clang supporta una serie di ottimizzazioni per ridurre la dimensione delle informazioni di debug
il binario. Funzionano in base al presupposto che le informazioni sul tipo di debug possano essere
distribuiti su più unità di compilazione. Ad esempio, Clang non emetterà il tipo
definizioni per i tipi che non sono necessari a un modulo e potrebbero essere sostituiti con a
dichiarazione anticipata. Inoltre, Clang emetterà solo informazioni sul tipo per una classe C++ dinamica
nel modulo che contiene la vtable per la classe.

I -fstandalone-debug l'opzione disattiva queste ottimizzazioni. Questo è utile quando
lavorare con librerie di terze parti che non vengono fornite con informazioni di debug. Questo è il
default su Darwin. Tieni presente che Clang non emetterà mai informazioni sul tipo per i tipi that
non sono affatto referenziati dal programma.

-feccezioni
Abilita la generazione di informazioni di rimozione, ciò consente di generare eccezioni
Stack frame compilati di Clang. Questo è attivo per impostazione predefinita in x86-64.

-ftrapv
Genera codice per rilevare errori di overflow di numeri interi. L'overflow dell'intero con segno non è definito
in C, con questo flag, viene generato codice aggiuntivo per rilevarlo e interromperlo quando accade
accade.

-fvisibilità
Questo flag imposta il livello di visibilità predefinito.

-fcomune
Questo flag specifica che le variabili senza inizializzatori ottengono un collegamento comune. Può essere
disabilitato con -fno-comune.

-ftls-modello
Imposta il modello di archiviazione locale del thread (TLS) predefinito da utilizzare per le variabili locali del thread.
I valori validi sono: "global-dynamic", "local-dynamic", "initial-exec" e "local-exec".
L'impostazione predefinita è "globale-dinamico". Il modello predefinito può essere sovrascritto con il file
Attributo tls_model. Il compilatore proverà a scegliere un modello più efficiente se
possibile.

-flto -emit-llvm
Genera file di output nei formati LLVM, adatti per l'ottimizzazione del tempo di collegamento. Quando usato
con -S questo genera file di assembly del linguaggio intermedio LLVM, altrimenti questo
genera file oggetto in formato bitcode LLVM (che possono essere passati al linker
a seconda delle opzioni di selezione della fase).

Guidatore Opzioni
-###
Stampa (ma non esegui) i comandi da eseguire per questa compilazione.

--Aiuto
Visualizza le opzioni disponibili.

-Qunused-argomenti
Non emette avvisi per argomenti del driver non utilizzati.

-Wa,args
Passa gli argomenti separati da virgole args all'assemblatore.

-Wl,args
Passa gli argomenti separati da virgole args al linker.

-Wp,args
Passa gli argomenti separati da virgole args al preprocessore.

-Xanalizzatore arg
Passare arg all'analizzatore statico.

-Xassemblatore arg
Passare arg all'assemblatore.

-Xlinker arg
Passare arg al linker.

-Xpreprocessore arg
Passare arg al preprocessore.

-o filetto
Scrivi output su filetto.

-stampa-nome-file=filetto
Stampa il percorso completo della libreria di filetto.

-print-libgcc-nome-file
Stampa il percorso della libreria per "libgcc.a".

-nome-programma-stampa=Nome
Stampa il percorso completo del programma Nome.

-stampa-dir-ricerca
Stampa i percorsi utilizzati per trovare librerie e programmi.

-salva-temps
Salva i risultati della compilazione intermedia.

-integrato-come -no-integrato-as
Utilizzati per abilitare e disabilitare, rispettivamente, l'utilizzo dell'assemblatore integrato. Se
l'assemblatore integrato è attivo per impostazione predefinita e dipende dalla destinazione.

-tempo
Temporizza i singoli comandi.

-ftime-rapporto
Stampa riepilogo temporale di ogni fase di compilazione.

-v Mostra i comandi da eseguire e utilizza l'output dettagliato.

Diagnostica Ultrasuoni Opzioni
-fshow-colonna -fshow-posizione-origine -fcaret-diagnostica -fdiagnostics-fixit-info
-fdiagnostics-parseable-fixits -fdiagnostics-print-source-range-info
-fprint-source-range-info -fdiagnostics-show-opzione -flunghezza-messaggio
Queste opzioni controllano il modo in cui Clang stampa le informazioni sulla diagnostica (errori e
avvertenze). Per ulteriori informazioni consultare il manuale utente di Clang.

preprocessore Opzioni
-Dnomemacro=valore
Aggiunge un #define implicito nel buffer delle predefinizioni che viene letto prima del sorgente
il file è preelaborato.

-Unomemacro
Aggiunge un #undef implicito nel buffer predefinito che viene letto prima del sorgente
il file è preelaborato.

-includere Nome del file
Aggiunge un #include implicito nel buffer predefinito che viene letto prima del sorgente
il file è preelaborato.

-Ielenco
Aggiungere la directory specificata al percorso di ricerca per i file di inclusione.

-Felenco
Aggiungere la directory specificata al percorso di ricerca dei file di inclusione del framework.

-nostdin
Non cercare nelle directory di sistema standard o nelle directory integrate del compilatore
includi file.

-nostdlibinc
Non cercare i file include nelle directory di sistema standard, ma esegui la ricerca
le directory incluse nel compilatore sono integrate.

-nobuiltininc
Non cercare file include nella directory incorporata di clang.

AMBIENTE


TMPDIR, TEMP, TMP
Queste variabili di ambiente vengono controllate, in ordine, affinché la posizione scriva temporanea
file utilizzati durante il processo di compilazione.

CPATH
Se questa variabile di ambiente è presente, viene trattata come un elenco delimitato di percorsi a
essere aggiunto all'elenco dei percorsi di inclusione del sistema predefinito. Il delimitatore è la piattaforma
delimitatore dipendente, come utilizzato in PERCORSO variabile d'ambiente.

I componenti vuoti nella variabile di ambiente vengono ignorati.

C_include_path, OBJC_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJCPLUS_INCLUDE_PATH
Queste variabili di ambiente specificano percorsi aggiuntivi, come per CPATH, che sono solo
utilizzato durante l'elaborazione della lingua appropriata.

MACOSX_DEPLOYMENT_TARGET
Se -mmacosx-version-min non è specificato, viene letta la destinazione di distribuzione predefinita
questa variabile d'ambiente. Questa opzione riguarda solo i target Darwin.

Utilizza clang-3.5 online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

  • 1
    USM
    USM
    Usm è un pacchetto slackware unificato
    manager che gestisce automatico
    risoluzione delle dipendenze. Unifica
    vari repository di pacchetti tra cui
    slackware, slacky, p...
    Scarica usm
  • 2
    Chart.js
    Chart.js
    Chart.js è una libreria Javascript che
    consente a designer e sviluppatori di disegnare
    tutti i tipi di grafici utilizzando l'HTML5
    elemento tela. Chart js offre un ottimo
    Vettore ...
    Scarica Chart.js
  • 3
    iReport-Designer per JasperReports
    iReport-Designer per JasperReports
    NOTA: Supporto per iReport/Jaspersoft Studio
    Annuncio: a partire dalla versione 5.5.0,
    Jaspersoft Studio sarà l'ufficialità
    client di progettazione per JasperReports. segnalo
    volere...
    Scarica iReport Designer per JasperReports
  • 4
    PostInstallerF
    PostInstallerF
    PostInstallerF installerà tutti i file
    software che Fedora Linux e altri
    non include per impostazione predefinita, dopo
    eseguendo Fedora per la prima volta. Suo
    facile per...
    Scarica PostInstallerF
  • 5
    straccio
    straccio
    Il progetto strace è stato spostato in
    https://strace.io. strace is a
    diagnostico, di debug e didattico
    tracciatore spazio utente per Linux. È solito
    per monitorare un...
    Scarica strace
  • 6
    GUI di estrazione gMKV
    GUI di estrazione gMKV
    Una GUI per l'utilità mkvextract (parte di
    MKVToolNix) che incorpora la maggior parte (se
    non tutti) funzionalità di mkvextract e
    utilità mkvinfo. Scritto in C#NET 4.0,...
    Scarica gMKVExtractGUI
  • Di Più "

Comandi Linux

Ad