1
0
Fork 0
mirror of https://github.com/tldr-pages/tldr.git synced 2025-04-22 17:22:10 +02:00
tldr/pages/common/clang.md
Reinhart Previano Koentjoro d29375da5c
clang, clang++, gcc, g++: standardize English page and Indonesian translation (#13751)
* clang, clang++, gcc, g++: standardize English page and add Indonesian translation

This commit adds the short and long-form parameters, enforce imperative mood, and standardizes the contents between `clang` and `gcc` as well as `clang++` and `g++`.

* clang++: Apply suggestions from code review

Co-authored-by: Sebastiaan Speck <12570668+sebastiaanspeck@users.noreply.github.com>

* clang++: fix URL

* clang, clang++, gcc, g++: fix translation inconsistencies

* Apply suggestions from code review

Co-authored-by: Sebastiaan Speck <12570668+sebastiaanspeck@users.noreply.github.com>

* Update pages/common/gcc.md

* Update pages.id/common/clang++.md

* Update pages.id/common/clang++.md

* clang++, g++: fix file extension

---------

Co-authored-by: Sebastiaan Speck <12570668+sebastiaanspeck@users.noreply.github.com>
Co-authored-by: Sebastiaan Speck <shem.speck@gmail.com>
2024-09-23 12:52:44 +07:00

37 lines
1.3 KiB
Markdown

# clang
> Compile C, C++, and Objective-C source files. Can be used as a drop-in replacement for GCC.
> Part of LLVM.
> More information: <https://clang.llvm.org/docs/ClangCommandLineReference.html>.
- Compile multiple source files into an executable:
`clang {{path/to/source1.c path/to/source2.c ...}} {{-o|--output}} {{path/to/output_executable}}`
- Activate output of all errors and warnings:
`clang {{path/to/source.c}} -Wall {{-o|--output}} {{output_executable}}`
- Show common warnings, debug symbols in output, and optimize without affecting debugging:
`clang {{path/to/source.c}} -Wall {{-g|--debug}} -Og {{-o|--output}} {{path/to/output_executable}}`
- Include libraries from a different path:
`clang {{path/to/source.c}} {{-o|--output}} {{path/to/output_executable}} -I{{path/to/header}} -L{{path/to/library}} -l{{library_name}}`
- Compile source code into LLVM Intermediate Representation (IR):
`clang {{-S|--assemble}} -emit-llvm {{path/to/source.c}} {{-o|--output}} {{path/to/output.ll}}`
- Compile source code into an object file without linking:
`clang {{-c|--compile}} {{path/to/source.c}}`
- Optimize the compiled program for performance:
`clang {{path/to/source.c}} -O{{1|2|3|fast}} {{-o|--output}} {{path/to/output_executable}}`
- Display version:
`clang --version`