InglesPransesEspanyol

Ad


OnWorks favicon

clang-3.5 - Online sa Cloud

Patakbuhin ang clang-3.5 sa OnWorks na libreng hosting provider sa Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

Ito ang command clang-3.5 na maaaring patakbuhin sa OnWorks na libreng hosting provider gamit ang isa sa aming maramihang libreng online na workstation gaya ng Ubuntu Online, Fedora Online, Windows online emulator o MAC OS online emulator

PROGRAMA:

NAME


clang - ang Clang C, C++, at Objective-C compiler

SINOPSIS


clang [-c|-S|-E] -std=pamantayan -g
[-O0|-O1|-O2|-O3|-Ofast|-Os|-Oz|-O|-O4]
-Wmga babala... -pedantic
-Idir... -Ldir...
-Dmacro[=defn]
-ftampok na opsyon...
-mpagpipilian sa makina...
-o output-file
-stdlib=aklatan
input-filename

DESCRIPTION


clang ay isang C, C++, at Objective-C compiler na sumasaklaw sa preprocessing, parsing,
pag-optimize, pagbuo ng code, pagpupulong, at pag-link. Depende kung aling high-level mode
naipasa ang setting, hihinto si Clang bago gumawa ng buong link. Habang si Clang ay mataas
pinagsama, ito ay mahalaga upang maunawaan ang mga yugto ng compilation, upang maunawaan kung paano
tawagin ito. Ang mga yugtong ito ay:

Drayber
Ang clang executable ay talagang isang maliit na driver na kumokontrol sa pangkalahatang pagpapatupad
ng iba pang mga tool tulad ng compiler, assembler at linker. Karaniwang hindi mo kailangan
upang makipag-ugnayan sa driver, ngunit malinaw mong ginagamit ito upang patakbuhin ang iba pang mga tool.

Nagpoproseso
Ang yugtong ito ay humahawak ng tokenization ng input source file, macro expansion, #include
pagpapalawak at paghawak ng iba pang mga direktiba ng preprocessor. Ang output ng yugtong ito ay
karaniwang tinatawag na ".i" (para sa C), ".ii" (para sa C++), ".mi" (para sa Objective-C) , o ".mii"
(para sa Objective-C++) na file.

Nagpaparada at Semantiko Pagsusuri
Ang yugtong ito ay nag-parse ng input file, na nagsasalin ng mga preprocessor token sa isang parse tree.
Sa sandaling nasa anyo ng isang puno ng parser, inilalapat nito ang pagsusuri ng semantiko upang makalkula ang mga uri para sa
pati na rin ang mga expression at alamin kung ang code ay mahusay na nabuo. Ang yugtong ito ay
responsable para sa pagbuo ng karamihan sa mga babala ng compiler pati na rin ang mga error sa pag-parse. Ang
Ang output ng yugtong ito ay isang "Abstract Syntax Tree" (AST).

kodigo Henerasyon at Optimization
Ang yugtong ito ay nagsasalin ng isang AST sa mababang antas na intermediate code (kilala bilang "LLVM IR") at
sa huli sa machine code. Ang bahaging ito ay responsable para sa pag-optimize ng nabuo
code at pangangasiwa sa pagbuo ng code na tukoy sa target. Ang output ng yugtong ito ay
karaniwang tinatawag na ".s" na file o "assembly" na file.

Sinusuportahan din ng Clang ang paggamit ng isang pinagsamang assembler, kung saan ang generator ng code
direktang gumagawa ng mga object file. Iniiwasan nito ang overhead ng pagbuo ng ".s" na file
at ng pagtawag sa target assembler.

Assembler
Ang yugtong ito ay nagpapatakbo ng target assembler upang isalin ang output ng compiler sa a
target na object file. Ang output ng yugtong ito ay karaniwang tinatawag na ".o" na file o
"bagay" na file.

Link
Ang yugtong ito ay nagpapatakbo ng target na linker upang pagsamahin ang maraming object file sa isang executable o
dynamic na library. Ang output ng yugtong ito ay karaniwang tinatawag na "a.out", ".dylib" o
".so" na file.

Ang Clang compiler ay sumusuporta sa isang malaking bilang ng mga opsyon upang makontrol ang bawat isa sa mga yugtong ito. Sa
bilang karagdagan sa compilation ng code, sinusuportahan din ng Clang ang iba pang mga tool:

Clang Statik Analyzer

Ang Clang Static Analyzer ay isang tool na nag-scan ng source code upang subukang maghanap ng mga bug
pagsusuri ng code. Gumagamit ang tool na ito ng maraming bahagi ng Clang at binuo sa parehong driver.
Mangyaring tingnanhttp://clang-analyzer.llvm.org> para sa higit pang mga detalye kung paano gamitin ang static
tagapag-aral

Opsyon


Stage Pagpili Options
-E Patakbuhin ang yugto ng preprocessor.

-fsyntax-lamang
Patakbuhin ang mga yugto ng preprocessor, parser at type checking.

-S Patakbuhin ang mga nakaraang yugto pati na rin ang pagbuo ng LLVM at mga yugto ng pag-optimize at target-
partikular na pagbuo ng code, na gumagawa ng isang assembly file.

-c Patakbuhin ang lahat ng nasa itaas, kasama ang assembler, na bumubuo ng target na ".o" object file.

hindi yugto pagpili opsyon
Kung walang tinukoy na opsyon sa pagpili ng yugto, ang lahat ng mga yugto sa itaas ay tatakbo, at ang linker ay
tumakbo upang pagsamahin ang mga resulta sa isang executable o shared library.

Wika Pagpili at paraan Options
-x wika
Tratuhin ang mga kasunod na input file bilang may uri wika.

-std=wika
Tukuyin ang pamantayan ng wika upang i-compile.

-stdlib=aklatan
Tukuyin ang C++ standard library na gagamitin; Ang mga sinusuportahang opsyon ay libstdc++ at libc++.

-ansi
Katulad ng -std=c89.

-ObjC++
Tratuhin ang mga source input file bilang Objective-C++ input.

-ObjC
Tratuhin ang mga source input file bilang Objective-C input.

-trigraphs
Paganahin ang mga trigraph.

-pagkakasundo
Ipahiwatig na ang file ay dapat na pinagsama-sama para sa isang freestanding, hindi isang naka-host,
kapaligiran.

-fno-buitin
Huwag paganahin ang espesyal na paghawak at pag-optimize ng mga builtin na function tulad ng strlen at
malloc.

-fmath-errno
Ipahiwatig na ang math function ay dapat ituring bilang pag-update ng errno.

-fpascal-strings
Paganahin ang suporta para sa Pascal-style na mga string na may "\pfoo".

-fms-extension
Paganahin ang suporta para sa mga extension ng Microsoft.

-fmsc-version=
Itakda ang _MSC_VER. Default sa 1300 sa Windows. Hindi nakatakda kung hindi man.

-fborland-extension
Paganahin ang suporta para sa mga extension ng Borland.

-fwritable-strings
Gawing default ang lahat ng literal na string sa maisusulat. Hindi nito pinapagana ang pag-iisa ng mga string at
iba pang mga pag-optimize.

-flax-vector-conversions
Payagan ang maluwag na uri ng pagsusuri ng mga panuntunan para sa mga implicit na conversion ng vector.

-fblocks
I-enable ang feature na "Blocks" na wika.

-fobjc-gc-lamang
Ipahiwatig na ang Objective-C code ay dapat i-compile sa GC-only mode, na gumagana lang
kapag pinagana ang Objective-C Garbage Collection.

-fobjc-gc
Ipahiwatig na ang Objective-C code ay dapat i-compile sa hybrid-GC mode, na gumagana sa
parehong GC at non-GC mode.

-fobjc-abi-bersyon=bersyon
Piliin ang Objective-C ABI na bersyon na gagamitin. Ang mga available na bersyon ay 1 (legacy na "fragile"
ABI), 2 (hindi fragile ABI 1), at 3 (non-fragile ABI 2).

-fobjc-nonfragile-abi-version=bersyon
Piliin ang Objective-C non-fragile na bersyon ng ABI na gagamitin bilang default. Ito ay magiging lamang
ginamit bilang Objective-C ABI kapag pinagana ang non-fragile ABI (alinman sa pamamagitan ng
-fobjc-nonfragile-abi, o dahil ito ang default ng platform).

-fobjc-nonfragile-abi
I-enable ang paggamit ng Objective-C non-fragile ABI. Sa mga platform kung saan ito ang
default na ABI, maaari itong i-disable gamit ang -fno-objc-nonfragile-abi.

Target Pagpili Options
Ganap na sinusuportahan ng Clang ang cross compilation bilang isang likas na bahagi ng disenyo nito. Depende sa
kung paano na-configure ang iyong bersyon ng Clang, maaaring mayroon itong suporta para sa ilang cross
compiler, o maaari lamang suportahan ang isang katutubong target.

-arko arkitektura
Tukuyin ang arkitektura na itatayo.

-mmacosx-version-min=bersyon
Kapag gumagawa para sa Mac OS X, tukuyin ang minimum na bersyon na sinusuportahan ng iyong application.

-miphoneos-version-min
Kapag gumagawa para sa iPhone OS, tukuyin ang minimum na bersyon na sinusuportahan ng iyong
application.

-martsa=CPU
Tukuyin na ang Clang ay dapat bumuo ng code para sa isang partikular na miyembro ng pamilya ng processor at
mamaya. Halimbawa, kung tinukoy mo -march=i486, pinapayagan ang compiler na bumuo
mga tagubilin na wasto sa i486 at mas bago na mga processor, ngunit maaaring wala sa
mga nauna.

kodigo Henerasyon Options
-O0 -O1 -O2 -O3 -Ofast -Os -Oz -O -O4
Tukuyin kung aling antas ng pag-optimize ang gagamitin:

-O0 Nangangahulugan na "walang pag-optimize": ang antas na ito ay nagsasama-sama ng pinakamabilis at bumubuo ng pinakamaraming
nade-debug na code.

-O1 Sa isang lugar sa pagitan -O0 at -O2.

-O2 Katamtamang antas ng pag-optimize na nagbibigay-daan sa karamihan ng mga pag-optimize.

-O3 katulad -O2, maliban na pinapagana nito ang mga pag-optimize na mas tumatagal upang gumanap o iyon
maaaring makabuo ng mas malaking code (sa pagtatangkang gawing mas mabilis ang pagtakbo ng program).

-Ofast
Pinapagana ang lahat ng pag-optimize mula sa -O3 kasama ng iba pang mga agresibong pag-optimize
na maaaring lumabag sa mahigpit na pagsunod sa mga pamantayan ng wika.

-Os katulad -O2 na may mga karagdagang pag-optimize upang bawasan ang laki ng code.

-Oz katulad -Os (at sa gayon -O2), ngunit binabawasan pa ang laki ng code.

-O Katumbas ng -O2.

-O4 at mas mataas
Kasalukuyang katumbas ng -O3

-g Bumuo ng impormasyon sa pag-debug. Tandaan na ang impormasyon sa pag-debug ng Clang ay pinakamahusay na gumagana sa -O0.

-fstandalone-debug -fno-standalone-debug
Sinusuportahan ng Clang ang ilang mga pag-optimize upang bawasan ang laki ng impormasyon sa pag-debug
ang binary. Gumagana ang mga ito batay sa pag-aakalang maaaring ang impormasyon ng uri ng pag-debug
kumalat sa maraming unit ng compilation. Halimbawa, ang Clang ay hindi maglalabas ng uri
mga kahulugan para sa mga uri na hindi kailangan ng isang module at maaaring palitan ng a
pasulong na deklarasyon. Dagdag pa, maglalabas lamang si Clang ng impormasyon ng uri para sa isang dynamic na klase ng C++
sa module na naglalaman ng vtable para sa klase.

Ang -fstandalone-debug pinapatay ng opsyon ang mga pag-optimize na ito. Ito ay kapaki-pakinabang kapag
nagtatrabaho sa mga 3rd-party na aklatan na walang kasamang impormasyon sa pag-debug. Ito ang
default sa Darwin. Tandaan na hindi kailanman maglalabas si Clang ng impormasyon ng uri para sa mga uri na iyon
ay hindi nire-refer sa lahat ng programa.

-fexceptions
Paganahin ang pagbuo ng impormasyon sa pag-relax, nagbibigay-daan ito sa mga pagbubukod na ihagis
Clang compiled stack frames. Naka-on ito bilang default sa x86-64.

-ftrapv
Bumuo ng code upang mahuli ang mga error sa overflow ng integer. Hindi natukoy ang signed integer overflow
sa C, gamit ang flag na ito, nabubuo ang dagdag na code para makita ito at i-abort kapag ito
ang mangyayari.

- kakayahang makita
Itinatakda ng flag na ito ang default na antas ng visibility.

-karaniwan
Tinutukoy ng flag na ito na ang mga variable na walang initializer ay nakakakuha ng karaniwang linkage. Maaari itong maging
may kapansanan sa -fno-karaniwan.

-ftls-modelo
Itakda ang default na modelo ng thread-local storage (TLS) na gagamitin para sa mga thread-local na variable.
Ang mga wastong value ay: "global-dynamic", "local-dynamic", "initial-exec" at "local-exec".
Ang default ay "global-dynamic". Maaaring ma-override ang default na modelo ng
katangian ng tls_model. Susubukan ng compiler na pumili ng mas mahusay na modelo kung
maaari.

-flto -emit-llvm
Bumuo ng mga output file sa mga LLVM na format, na angkop para sa pag-optimize ng oras ng link. Kapag ginamit
sa -S ito ay bumubuo ng LLVM intermediate language assembly file, kung hindi man ito
bumubuo ng LLVM bitcode format object file (na maaaring ipasa sa linker
depende sa mga opsyon sa pagpili ng entablado).

Drayber Options
-###
I-print (ngunit huwag patakbuhin) ang mga utos na tatakbo para sa compilation na ito.

- Tumulong
Ipakita ang mga available na opsyon.

-Nag-quusa-argumento
Huwag maglabas ng babala para sa hindi nagamit na mga argumento ng driver.

-Wa,mga pagtatalo
Ipasa ang mga argumentong pinaghihiwalay ng kuwit mga pagtatalo sa nagtitipon.

-Wl,mga pagtatalo
Ipasa ang mga argumentong pinaghihiwalay ng kuwit mga pagtatalo sa linker.

-Wp,mga pagtatalo
Ipasa ang mga argumentong pinaghihiwalay ng kuwit mga pagtatalo sa preprocessor.

-Xanalyzer arg
Pumasa arg sa static analyzer.

-Xassembler arg
Pumasa arg sa nagtitipon.

-Xlinker arg
Pumasa arg sa linker.

-Xpreprocessor arg
Pumasa arg sa preprocessor.

-o file
Isulat ang output sa file.

-print-file-name=file
I-print ang buong path ng library ng file.

-print-libgcc-file-name
I-print ang path ng library para sa "libgcc.a".

-print-prog-name=pangalan
I-print ang buong path ng program ng pangalan.

-print-search-dirs
I-print ang mga path na ginagamit para sa paghahanap ng mga library at program.

-save-temps
I-save ang mga intermediate na resulta ng compilation.

-integrated-as -no-integrated-as
Ginagamit upang paganahin at huwag paganahin, ayon sa pagkakabanggit, ang paggamit ng pinagsamang assembler. kung
naka-on ang integrated assembler bilang default ay nakadepende sa target.

-panahon
Oras ng mga indibidwal na utos.

-ftime-ulat
I-print ang buod ng timing ng bawat yugto ng compilation.

-v Ipakita ang mga utos para tumakbo at gumamit ng verbose output.

Diagnostics Options
-fshow-column -fshow-source-location -fcaret-diagnostics -fdiagnostics-fixit-info
-fdiagnostics-parseable-fixits -fdiagnostics-print-source-range-info
-fprint-source-range-info -fdiagnostics-show-option -fmessage-haba
Kinokontrol ng mga opsyong ito kung paano nagpi-print si Clang ng impormasyon tungkol sa mga diagnostic (mga error at
mga babala). Pakitingnan ang Clang User's Manual para sa higit pang impormasyon.

Preprocessor Options
-Dmacroname=halaga
Nagdaragdag ng implicit na #define sa mga predefine na buffer na binabasa bago ang source
na-preprocess ang file.

-Umacroname
Nagdaragdag ng implicit na #undef sa mga paunang tinukoy na buffer na binabasa bago ang pinagmulan
na-preprocess ang file.

-isama filename
Nagdaragdag ng implicit na #include sa mga predefine na buffer na binabasa bago ang source
na-preprocess ang file.

-Idirektoryo
Idagdag ang tinukoy na direktoryo sa path ng paghahanap para sa mga file na kasama.

-Fdirektoryo
Idagdag ang tinukoy na direktoryo sa path ng paghahanap para sa framework isama ang mga file.

-nostdinc
Huwag hanapin ang mga karaniwang direktoryo ng system o mga direktoryo ng builtin na compiler para sa
isama ang mga file.

-nostdlibinc
Huwag maghanap sa mga karaniwang direktoryo ng system para sa mga file na kasama, ngunit maghanap
compiler builtin isama ang mga direktoryo.

-nobuiltininc
Huwag maghanap sa builtin na direktoryo ng clang para sa pagsasama ng mga file.

Kapaligiran


TMPDIR, TEMP, TMP
Ang mga environment variable na ito ay sinusuri, sa pagkakasunud-sunod, para pansamantalang magsulat ang lokasyon
mga file na ginamit sa proseso ng compilation.

CPATH
Kung ang environment variable na ito ay naroroon, ito ay itinuturing bilang isang delimited na listahan ng mga path patungo sa
idinagdag sa default na system isama ang listahan ng landas. Ang delimiter ay ang plataporma
dependent delimitor, gaya ng ginamit sa PATH variable ng kapaligiran.

Ang mga walang laman na bahagi sa variable ng kapaligiran ay binabalewala.

C_INCLUDE_PATH, OBJC_INNCLUDE_PATH, CPLUS_INNCLUDE_PATH, OBJCPLUS_INCLUDE_PATH
Ang mga environment variable na ito ay tumutukoy ng mga karagdagang path, tulad ng para sa CPATH, na kung saan ay lamang
ginagamit kapag nagpoproseso ng angkop na wika.

MACOSX_DEPLOYMENT_TARGET
Kung ang -mmacosx-version-min ay hindi tinukoy, ang default na target sa pag-deploy ay babasahin mula sa
variable ng kapaligiran na ito. Ang pagpipiliang ito ay nakakaapekto lamang sa mga darwin na target.

Gamitin ang clang-3.5 online gamit ang mga serbisyo ng onworks.net


Mga Libreng Server at Workstation

Mag-download ng Windows at Linux apps

  • 1
    usm
    usm
    Ang Usm ay isang pinag-isang pakete ng slackware
    manager na humahawak ng awtomatiko
    paglutas ng dependency. Ito ay nagkakaisa
    iba't ibang mga repositoryo ng pakete kasama ang
    slackware, slacky, p...
    I-download ang usm
  • 2
    Chart.js
    Chart.js
    Ang Chart.js ay isang library ng Javascript na
    nagbibigay-daan sa mga designer at developer na gumuhit
    lahat ng uri ng mga chart gamit ang HTML5
    elemento ng canvas. Nag-aalok ang Chart js ng mahusay
    array...
    I-download ang Chart.js
  • 3
    iReport-Designer para sa JasperReports
    iReport-Designer para sa JasperReports
    TANDAAN: Suporta sa iReport/Jaspersoft Studio
    Anunsyo: Sa bersyon 5.5.0,
    Ang Jaspersoft Studio ang magiging opisyal
    kliyente ng disenyo para sa JasperReports. Iniuulat ko
    ay ...
    I-download ang iReport-Designer para sa JasperReports
  • 4
    PostInstallerF
    PostInstallerF
    I-install ng PostInstallerF ang lahat ng
    software na Fedora Linux at iba pa
    ay hindi kasama bilang default, pagkatapos
    pagpapatakbo ng Fedora sa unang pagkakataon. Nito
    madali para sa...
    I-download ang PostInstallerF
  • 5
    bakas
    bakas
    Ang strace project ay inilipat sa
    https://strace.io. strace is a
    diagnostic, debugging at pagtuturo
    userspace tracer para sa Linux. Ito ay ginagamit
    para subaybayan ang isang...
    I-download ang strace
  • 6
    gMKVExtractGUI
    gMKVExtractGUI
    Isang GUI para sa mkvextract utility (bahagi ng
    MKVToolNix) na kinabibilangan ng karamihan (kung
    hindi lahat) pag-andar ng mkvextract at
    mkvinfo utility. Nakasulat sa C#NET 4.0,...
    I-download ang gMKVExtractGUI
  • Marami pa »

Linux command

Ad