2024-11-16 11:01:03 -05:00
|
|
|
# clang
|
|
|
|
|
|
|
|
> Compila archivos fuente C, C+ y Objective-C. Se puede utilizar como un reemplazo para GCC.
|
|
|
|
> Parte de LLVM.
|
|
|
|
> Más información: <https://clang.llvm.org/docs/ClangCommandLineReference.html>.
|
|
|
|
|
|
|
|
- Compila archivos de múltiples fuentes en un ejecutable:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{ruta/a/fuente1.c ruta/a/fuente2.c ...}} {{[-o|--output]}} {{ruta/al/ejecutable_resultante}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
|
|
|
- Activa la salida de todos los errores y advertencias:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{ruta/a/fuente.c}} -Wall {{[-o|--output]}} {{ejecutable_resultante}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
- Muestra advertencias comunes, depura símbolos en la salida y optimiza sin afectar la depuración:
|
2024-11-16 11:01:03 -05:00
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{ruta/a/fuente.c}} -Wall {{[-g|--debug]}} -Og {{[-o|--output]}} {{ruta/al/ejecutable_resultante}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
|
|
|
- Incluye bibliotecas de una ruta diferente:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{ruta/a/fuente.c}} {{[-o|--output]}} {{ruta/al/ejecutable_resultante}} -I{{ruta/al/encabezado}} -L{{ruta/a/la/biblioteca}} -l{{nombre_biblioteca}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
|
|
|
- Compila código fuente hacia representación intermedia (IR) LLVM:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{[-S|--assemble]}} -emit-llvm {{ruta/a/fuente.c}} {{[-o|--output]}} {{ruta/a/la/salida.ll}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
|
|
|
- Compila código fuente en un archivo objeto sin vincular (linking):
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{[-c|--compile]}} {{ruta/a/fuente.c}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
|
|
|
- Optimiza el programa compilado para velocidad de ejecución:
|
|
|
|
|
2025-03-14 09:18:08 +02:00
|
|
|
`clang {{ruta/a/fuente.c}} -O{{1|2|3|fast}} {{[-o|--output]}} {{ruta/al/ejecutable_resultante}}`
|
2024-11-16 11:01:03 -05:00
|
|
|
|
|
|
|
- Muestra la versión:
|
|
|
|
|
|
|
|
`clang --version`
|