2021-03-10 19:34:48 +00:00
|
|
|
# g++
|
2017-11-30 05:08:29 +00:00
|
|
|
|
|
|
|
> Compiles C++ source files.
|
|
|
|
> Part of GCC (GNU Compiler Collection).
|
2019-06-07 11:58:18 +01:00
|
|
|
> More information: <https://gcc.gnu.org>.
|
2017-11-30 05:08:29 +00:00
|
|
|
|
|
|
|
- Compile a source code file into an executable binary:
|
|
|
|
|
2022-03-02 11:36:03 +00:00
|
|
|
`g++ {{path/to/source.cpp}} -o {{path/to/output_executable}}`
|
2017-11-30 05:08:29 +00:00
|
|
|
|
2017-11-30 07:25:37 +00:00
|
|
|
- Display (almost) all errors and warnings:
|
2017-11-30 05:08:29 +00:00
|
|
|
|
2022-03-02 11:36:03 +00:00
|
|
|
`g++ {{path/to/source.cpp}} -Wall -o {{path/to/output_executable}}`
|
2017-11-30 05:08:29 +00:00
|
|
|
|
2022-03-02 11:36:03 +00:00
|
|
|
- Choose a language standard to compile for (C++98/C++11/C++14/C++17):
|
2017-11-30 05:08:29 +00:00
|
|
|
|
2022-03-02 11:36:03 +00:00
|
|
|
`g++ {{path/to/source.cpp}} -std={{c++98|c++11|c++14|c++17}} -o {{path/to/output_executable}}`
|
2017-11-30 05:08:29 +00:00
|
|
|
|
|
|
|
- Include libraries located at a different path than the source file:
|
|
|
|
|
2022-03-02 11:36:03 +00:00
|
|
|
`g++ {{path/to/source.cpp}} -o {{path/to/output_executable}} -I{{path/to/header}} -L{{path/to/library}} -l{{library_name}}`
|
2022-09-20 04:47:58 +01:00
|
|
|
|
|
|
|
- Compile and link multiple source code files into an executable binary:
|
|
|
|
|
|
|
|
`g++ -c {{path/to/source_1.cpp path/to/source_2.cpp ...}} && g++ -o {{path/to/output_executable}} {{path/to/source_1.o path/to/source_2.o ...}}`
|
|
|
|
|
|
|
|
- Display version:
|
|
|
|
|
|
|
|
`g++ --version`
|