InglésFrancésEspañol

Ad


icono de página de OnWorks

clang-3.5 - Online en la nube

Ejecute clang-3.5 en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando clang-3.5 que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


clang: el compilador Clang C, C ++ y Objective-C

SINOPSIS


sonido metálico [-c|-S|-E] -std =estándar -g
[-O0|-O1|-O2|-O3|-Comida|-os|-Onz|-O|-O4]
-Wadvertencias ... -pedante
-Idir ... -Ldir ...
-Dmacro [= defn]
-fopción-característica ...
-mopción-máquina ...
-o archivo de salida
-stdlib =bibliotecas
nombres de archivo de entrada

DESCRIPCIÓN


sonido metálico es un compilador de C, C ++ y Objective-C que abarca preprocesamiento, análisis,
optimización, generación de código, ensamblaje y vinculación. Dependiendo del modo de alto nivel
se pasa la configuración, Clang se detendrá antes de hacer un enlace completo. Mientras que Clang es muy
integrado, es importante comprender las etapas de compilación, comprender cómo
invocarlo. Estas etapas son:

Destornillador
El sonido metálico ejecutable es en realidad un pequeño controlador que controla la ejecución general
de otras herramientas como el compilador, ensamblador y enlazador. Normalmente no necesitas
para interactuar con el controlador, pero lo usa de forma transparente para ejecutar las otras herramientas.

preprocesamiento
Esta etapa maneja la tokenización del archivo fuente de entrada, expansión de macro, #include
expansión y manejo de otras directivas de preprocesador. La salida de esta etapa es
normalmente llamado ".i" (para C), ".ii" (para C ++), ".mi" (para Objective-C) o ".mii"
(para Objective-C ++) archivo.

Parsing y Semántico ECONOMÉTRICOS
Esta etapa analiza el archivo de entrada, traduciendo los tokens del preprocesador en un árbol de análisis.
Una vez en forma de árbol del analizador, aplica el análisis semántico para calcular tipos para
expresiones también y determinar si el código está bien formado. Esta etapa es
responsable de generar la mayoría de las advertencias del compilador, así como los errores de análisis. los
El resultado de esta etapa es un "Árbol de sintaxis abstracta" (AST).

Código Generación y Optimización
Esta etapa traduce un AST en un código intermedio de bajo nivel (conocido como "LLVM IR") y
en última instancia, al código de máquina. Esta fase se encarga de optimizar la generada
código y manejo de la generación de código específico de destino. La salida de esta etapa es
normalmente se denomina archivo ".s" o archivo de "ensamblaje".

Clang también admite el uso de un ensamblador integrado, en el que el generador de código
produce archivos de objeto directamente. Esto evita la sobrecarga de generar el archivo ".s"
y de llamar al ensamblador de destino.

Ensamblador
Esta etapa ejecuta el ensamblador de destino para traducir la salida del compilador en un
archivo de objeto de destino. La salida de esta etapa se denomina normalmente archivo ".o" o
archivo "objeto".

enlaces
Esta etapa ejecuta el vinculador de destino para fusionar varios archivos de objeto en un ejecutable o
biblioteca dinámica. La salida de esta etapa se suele llamar "a.out", ".dylib" o
Archivo ".so".

El compilador de Clang admite una gran cantidad de opciones para controlar cada una de estas etapas. En
Además de la compilación de código, Clang también admite otras herramientas:

Sonido metálico Estático Analizador

El analizador estático de Clang es una herramienta que escanea el código fuente para tratar de encontrar errores a través de
análisis de código. Esta herramienta utiliza muchas partes de Clang y está integrada en el mismo controlador.
Por favor mirahttp://clang-analyzer.llvm.org> para obtener más detalles sobre cómo utilizar la estática
analizador.

CAMPUS


Etapa Selección Opciones
-E Ejecute la etapa del preprocesador.

-fsyntax-solo
Ejecute las etapas de preprocesador, analizador y verificación de tipos.

-S Ejecute las etapas anteriores, así como las etapas de optimización y generación de LLVM y
generación de código específico, produciendo un archivo de ensamblaje.

-c Ejecute todo lo anterior, más el ensamblador, generando un archivo de objeto ".o" de destino.

no escenario selección opción
Si no se especifica una opción de selección de etapa, todas las etapas anteriores se ejecutan y el vinculador se
ejecutar para combinar los resultados en una biblioteca ejecutable o compartida.

Idioma Selección y Moda Opciones
-x idioma
Trate los archivos de entrada posteriores como si tuvieran tipo idioma.

-estándar=idioma
Especifique el estándar de idioma para el que se compilará.

-stdlib=bibliotecas
Especifique la biblioteca estándar de C ++ que se utilizará; las opciones admitidas son libstdc ++ y libc ++.

-ansi
Igual que -std = c89.

-ObjC ++
Trate los archivos de entrada de origen como entradas de Objective-C ++.

-ObjC
Trate los archivos de entrada de origen como entradas de Objective-C.

-trigrafos
Habilite los trígrafos.

independiente
Indique que el archivo debe compilarse para una versión independiente, no alojada,
ambiente.

-fno-incorporado
Deshabilite el manejo especial y las optimizaciones de funciones integradas como strlen y
malloc.

-fmath-errno
Indique que las funciones matemáticas deben tratarse como una actualización de errno.

-fpascal-cuerdas
Habilite la compatibilidad con cadenas de estilo Pascal con "\ pfoo".

-fms-extensiones
Habilite la compatibilidad con extensiones de Microsoft.

-fmsc-versión =
Establezca _MSC_VER. El valor predeterminado es 1300 en Windows. No establecido de otra manera.

-fborland-extensiones
Habilite la compatibilidad con las extensiones de Borland.

-cadenas-fwritable
Hacer que todos los literales de cadena sean de escritura por defecto. Esto deshabilita la unificación de cuerdas y
otras optimizaciones.

-conversiones-de-vector-lino
Permitir reglas de verificación de tipos sueltas para conversiones de vectores implícitas.

-fbloques
Habilite la función de idioma "Bloques".

-fobjc-gc-solo
Indique que el código Objective-C debe compilarse en modo solo GC, que solo funciona
cuando la recolección de basura Objective-C está habilitada.

-fobjc-gc
Indique que el código Objective-C debe compilarse en modo GC híbrido, que funciona con
tanto en modo GC como en modo no GC.

-fobjc-abi-versión=versión
Seleccione la versión ABI de Objective-C para usar. Las versiones disponibles son 1 (heredada "frágil"
ABI), 2 (ABI 1 no frágil) y 3 (ABI 2 no frágil).

-fobjc-nonfragile-abi-versión=versión
Seleccione la versión de ABI no frágil de Objective-C para usar de forma predeterminada. Esto solo sera
utilizado como el ABI de Objective-C cuando el ABI no frágil está habilitado (ya sea a través de
-fobjc-nonfragile-abi, o porque es la plataforma predeterminada).

-fobjc-no frágil-abi
Habilite el uso de la ABI no frágil de Objective-C. En plataformas para las que esta es la
ABI predeterminada, se puede desactivar con -fno-objc-no frágil-abi.

Target Selección Opciones
Clang es totalmente compatible con la compilación cruzada como parte inherente de su diseño. Dependiendo de
cómo está configurada su versión de Clang, es posible que tenga soporte para una serie de
compiladores, o solo pueden admitir un destino nativo.

-arco arquitectura
Especifique la arquitectura para la que se va a construir.

-mmacosx-versión-min=versión
Al compilar para Mac OS X, especifique la versión mínima compatible con su aplicación.

-miphoneos-versión-min
Al compilar para iPhone OS, especifique la versión mínima admitida por su
.

-marcha=cpu
Especifique que Clang debe generar código para un miembro específico de la familia de procesadores y
más tarde. Por ejemplo, si especifica -march = i486, el compilador puede generar
instrucciones que son válidas en i486 y procesadores posteriores, pero que pueden no existir en
los anteriores.

Código Generación Opciones
-O0 -O1 -O2 -O3 -Comida -os -Onz -O -O4
Especifique qué nivel de optimización utilizar:

-O0 Significa "sin optimización": este nivel compila más rápido y genera más
código depurable.

-O1 En algún lugar entre -O0 y -O2.

-O2 Nivel moderado de optimización que permite la mayoría de optimizaciones.

-O3 Me gusta -O2, excepto que permite optimizaciones que tardan más en realizarse o que
puede generar un código más grande (en un intento de hacer que el programa se ejecute más rápido).

-Comida
Habilita todas las optimizaciones de -O3 junto con otras optimizaciones agresivas
que puede violar el estricto cumplimiento de los estándares del idioma.

-os Me gusta -O2 con optimizaciones adicionales para reducir el tamaño del código.

-Onz Me gusta -os (y por lo tanto -O2), pero reduce aún más el tamaño del código.

-O Equivalente a -O2.

-O4 y más alto
Actualmente equivalente a -O3

-g Genere información de depuración. Tenga en cuenta que la información de depuración de Clang funciona mejor en -O0.

-fstandalone-depuración -fno-independiente-depuración
Clang admite una serie de optimizaciones para reducir el tamaño de la información de depuración en
el binario. Funcionan partiendo del supuesto de que la información del tipo de depuración se puede
repartidos en varias unidades de compilación. Por ejemplo, Clang no emitirá tipo
definiciones para tipos que no son necesarios para un módulo y que podrían ser reemplazados por un
declaración anticipada. Además, Clang solo emitirá información de tipo para una clase dinámica de C ++
en el módulo que contiene la vtable para la clase.

El -fstandalone-depuración La opción desactiva estas optimizaciones. Esto es útil cuando
trabajar con bibliotecas de terceros que no incluyen información de depuración. Este es el
predeterminado en Darwin. Tenga en cuenta que Clang nunca emitirá información de tipo para tipos que
no están referenciados en absoluto por el programa.

-fexcepciones
Habilite la generación de información de desenrollado, esto permite que se eliminen las excepciones
Clang compiló marcos de pila. Está activado de forma predeterminada en x86-64.

-ftrapv
Genere código para detectar errores de desbordamiento de enteros. El desbordamiento de entero firmado no está definido
en C, con esta bandera, se genera código extra para detectar esto y abortar cuando se
sucede.

-fvisibilidad
Esta bandera establece el nivel de visibilidad predeterminado.

-fcomún
Esta bandera especifica que las variables sin inicializadores obtienen un enlace común. Puede ser
discapacitado con -fno-común.

-modelo-ftls
Establezca el modelo de almacenamiento local de subprocesos (TLS) predeterminado que se usará para las variables locales de subprocesos.
Los valores válidos son: "global-dynamic", "local-dynamic", "initial-exec" y "local-exec".
El valor predeterminado es "dinámico global". El modelo predeterminado se puede anular con el
Atributo tls_model. El compilador intentará elegir un modelo más eficiente si
posible.

-flto -emitir-llvm
Genere archivos de salida en formatos LLVM, adecuados para la optimización del tiempo de enlace. Cuando se utiliza
-S esto genera archivos ensambladores de lenguaje intermedio LLVM; de lo contrario, esto
genera archivos de objeto de formato de código de bits LLVM (que pueden pasarse al enlazador
dependiendo de las opciones de selección de escenario).

Destornillador Opciones
- ###
Imprima (pero no ejecute) los comandos que se ejecutarán para esta compilación.

--ayuda
Muestra las opciones disponibles.

-Argumentos-sin-utilizar
No emita advertencias por argumentos de controlador no utilizados.

-Washington,args
Pase los argumentos separados por comas en args al ensamblador.

-Wl,args
Pase los argumentos separados por comas en args al enlazador.

-Wp,args
Pase los argumentos separados por comas en args al preprocesador.

-Xanalizador arg
Aprobado arg al analizador estático.

-Ensamblador arg
Aprobado arg al ensamblador.

-Xlinker arg
Aprobado arg al enlazador.

-Xpreprocesador arg
Aprobado arg al preprocesador.

-o presentar
Escribir salida en presentar.

-nombre-archivo-de-impresión=presentar
Imprima la ruta completa de la biblioteca de presentar.

-print-libgcc-nombre-de-archivo
Imprima la ruta de la biblioteca para "libgcc.a".

-imprimir-nombre-del-prog=nombre
Imprima la ruta completa del programa de nombre .

-directores-de-búsqueda-de-impresión
Imprima las rutas utilizadas para buscar bibliotecas y programas.

-guardar-temps
Guarde los resultados de la compilación intermedia.

-integrado-como -no-integrado-como
Se utiliza para habilitar y deshabilitar, respectivamente, el uso del ensamblador integrado. Si
el ensamblador integrado está activado de forma predeterminada y depende del destino.

-hora
Comandos individuales de tiempo.

-informe-de-tiempo
Imprima un resumen de tiempos de cada etapa de la compilación.

-v Mostrar comandos para ejecutar y usar resultados detallados.

Diagnóstico Opciones
-fshow-columna -fshow-source-ubicación -fcaret-diagnósticos -fdiagnostics-fixit-info
-fdiagnostics-parseable-fixits -fdiagnostics-imprimir-fuente-rango-info
-fprint-fuente-rango-info -fdiagnostics-mostrar-opción -fmensaje-largo
Estas opciones controlan cómo Clang imprime la información sobre los diagnósticos (errores y
advertencias). Consulte el Manual del usuario de Clang para obtener más información.

Preprocesador Opciones
-Dmacroname = valor
Agrega un #define implícito en el búfer predefinido que se lee antes de la fuente
el archivo está preprocesado.

-Umacronombre
Agrega un #undef implícito en el búfer predefinido que se lee antes de la fuente
el archivo está preprocesado.

-incluir nombre de archivo
Agrega un #include implícito en el búfer predefinido que se lee antes de la fuente
el archivo está preprocesado.

-Idirectorio
Agregue el directorio especificado a la ruta de búsqueda para incluir archivos.

-Fdirectorio
Agregue el directorio especificado a la ruta de búsqueda de los archivos de inclusión del marco.

-nostdinc
No busque en los directorios estándar del sistema o en los directorios integrados del compilador para
incluir archivos.

-nostdlibinc
No busque archivos de inclusión en los directorios del sistema estándar, pero sí busque
El compilador incorporado incluye directorios.

-noconstruido
No busque archivos de inclusión en el directorio integrado de clang.

MEDIO AMBIENTE


TMPDIR, TEMP, TMP
Estas variables de entorno se comprueban, en orden, para que la ubicación escriba temporal
archivos utilizados durante el proceso de compilación.

CPATH
Si esta variable de entorno está presente, se trata como una lista delimitada de rutas para
ser agregado a la lista de ruta de inclusión predeterminada del sistema. El delimitador es la plataforma
delimitador dependiente, como se usa en el TRAYECTORIA Variable ambiental.

Los componentes vacíos en la variable de entorno se ignoran.

C_INCLUDE_RUTA, OBJC_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJCPLUS_INCLUDE_PATH
Estas variables de entorno especifican rutas adicionales, como para CPATH, que son solo
utilizado al procesar el idioma apropiado.

MACOSX_DEPLOYMENT_TARGET
Si no se especifica -mmacosx-version-min, se lee el destino de implementación predeterminado
esta variable de entorno. Esta opción solo afecta a los objetivos de Darwin.

Use clang-3.5 en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    usm
    usm
    Usm es un paquete de slackware unificado
    gerente que maneja automático
    resolución de dependencia. unifica
    varios repositorios de paquetes, incluidos
    slackware, flojo, p...
    Descargar usm
  • 2
    Chart.js
    Chart.js
    Chart.js es una biblioteca Javascript que
    permite a los diseñadores y desarrolladores dibujar
    todo tipo de gráficos usando HTML5
    elemento de lienzo Chart js ofrece una gran
    matriz ...
    Descargar Chart.js
  • 3
    iReport-Designer para JasperReports
    iReport-Designer para JasperReports
    NOTA: Compatibilidad con iReport/Jaspersoft Studio
    Anuncio: a partir de la versión 5.5.0,
    Jaspersoft Studio será el oficial
    cliente de diseño para JasperReports. yo reporto
    será...
    Descargar iReport-Designer para JasperReports
  • 4
    PostInstaladorF
    PostInstaladorF
    PostInstallerF instalará todos los
    software que Fedora Linux y otros
    no incluye por defecto, después
    ejecutando Fedora por primera vez. Su
    fácil para ...
    Descargar PostInstallerF
  • 5
    rastro
    rastro
    El proyecto strace se ha trasladado a
    https://strace.io. strace is a
    diagnóstico, depuración e instrucción
    rastreador de espacio de usuario para Linux. Esta usado
    para monitorear un...
    Descargar seguimiento
  • 6
    GUI de extracto de gMKV
    GUI de extracto de gMKV
    Una GUI para la utilidad mkvextract (parte de
    MKVToolNix) que incorpora la mayoría (si
    no todas) la funcionalidad de mkvextract y
    Utilidades mkvinfo. Escrito en C#NET 4.0,...
    Descargar gMKVExtractGUI
  • Más "

Comandos de Linux

Ad