2021-09-11 10:32:32 +02:00
|
|
|
# clang++
|
|
|
|
|
2024-04-25 19:58:21 -03:00
|
|
|
> Compile C++ source files.
|
2021-09-11 10:32:32 +02:00
|
|
|
> Part of LLVM.
|
|
|
|
> More information: <https://clang.llvm.org>.
|
|
|
|
|
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
|
|
|
- Compile a set of source code files into an executable binary:
|
2021-09-11 10:32:32 +02:00
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{path/to/source1.cpp path/to/source2.cpp ...}} {{[-o|--output]}} {{path/to/output_executable}}`
|
2021-09-11 10:32:32 +02:00
|
|
|
|
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
|
|
|
- Activate output of all errors and warnings:
|
2021-09-11 10:32:32 +02:00
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{path/to/source.cpp}} -Wall {{[-o|--output]}} {{output_executable}}`
|
2021-09-11 10:32:32 +02:00
|
|
|
|
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
|
|
|
- Show common warnings, debug symbols in output, and optimize without affecting debugging:
|
2021-09-11 10:32:32 +02:00
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{path/to/source.cpp}} -Wall {{[-g|--debug]}} -Og {{[-o|--output]}} {{path/to/output_executable}}`
|
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
|
|
|
|
|
|
|
- Choose a language standard to compile for:
|
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{path/to/source.cpp}} -std={{c++20}} {{[-o|--output]}} {{path/to/output_executable}}`
|
2021-09-11 10:32:32 +02:00
|
|
|
|
|
|
|
- Include libraries located at a different path than the source file:
|
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{path/to/source.cpp}} {{[-o|--output]}} {{path/to/output_executable}} -I{{path/to/header_path}} -L{{path/to/library_path}} -l{{path/to/library_name}}`
|
2021-09-11 10:32:32 +02:00
|
|
|
|
|
|
|
- Compile source code into LLVM Intermediate Representation (IR):
|
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{[-S|--assemble]}} -emit-llvm {{path/to/source.cpp}} {{[-o|--output]}} {{path/to/output.ll}}`
|
2023-12-02 09:26:47 +01:00
|
|
|
|
|
|
|
- Optimize the compiled program for performance:
|
|
|
|
|
2025-03-08 16:43:04 +02:00
|
|
|
`clang++ {{path/to/source.cpp}} -O{{1|2|3|fast}} {{[-o|--output]}} {{path/to/output_executable}}`
|
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
|
|
|
|
|
|
|
- Display version:
|
|
|
|
|
|
|
|
`clang++ --version`
|