tldr/pages/common/clang.md

29 lines
870 B
Markdown
Raw Normal View History

2015-08-04 19:18:34 +01:00
# clang
> Compiler for C, C++, and Objective-C source files. Can be used as a drop-in replacement for GCC.
> More information: <https://clang.llvm.org/docs/ClangCommandLineReference.html>.
2015-08-04 19:18:34 +01:00
- Compile a source code file into an executable binary:
2015-08-04 19:18:34 +01:00
`clang {{input_source.c}} -o {{output_executable}}`
- Activate output of all errors and warnings:
2015-08-04 19:18:34 +01:00
`clang {{input_source.c}} -Wall -o {{output_executable}}`
- Include libraries located at a different path than the source file:
2015-08-04 19:18:34 +01:00
`clang {{input_source.c}} -o {{output_executable}} -I{{header_path}} -L{{library_path}} -l{{library_name}}`
2018-10-28 17:04:44 +00:00
- Compile source code into LLVM Intermediate Representation (IR):
`clang -S -emit-llvm {{file.c}} -o {{file.ll}}`
2021-09-09 20:55:54 +01:00
- Compile source code without linking:
`clang -c {{input_source.c}}`
- Optimize the compiled program for performance:
`clang {{path/to/source.c}} -O{{1|2|3|fast}}`