2021-03-10 14:34:48 -05:00
|
|
|
# g++
|
2017-11-30 10:38:29 +05:30
|
|
|
|
|
|
|
> 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 10:38:29 +05:30
|
|
|
|
|
|
|
- Compile a source code file into an executable binary:
|
|
|
|
|
2022-03-02 03:36:03 -08:00
|
|
|
`g++ {{path/to/source.cpp}} -o {{path/to/output_executable}}`
|
2017-11-30 10:38:29 +05:30
|
|
|
|
2022-10-03 05:37:06 +00:00
|
|
|
- Display common warnings:
|
2017-11-30 10:38:29 +05:30
|
|
|
|
2022-03-02 03:36:03 -08:00
|
|
|
`g++ {{path/to/source.cpp}} -Wall -o {{path/to/output_executable}}`
|
2017-11-30 10:38:29 +05:30
|
|
|
|
2022-03-02 03:36:03 -08:00
|
|
|
- Choose a language standard to compile for (C++98/C++11/C++14/C++17):
|
2017-11-30 10:38:29 +05:30
|
|
|
|
2022-03-02 03:36:03 -08:00
|
|
|
`g++ {{path/to/source.cpp}} -std={{c++98|c++11|c++14|c++17}} -o {{path/to/output_executable}}`
|
2017-11-30 10:38:29 +05:30
|
|
|
|
|
|
|
- Include libraries located at a different path than the source file:
|
|
|
|
|
2022-03-02 03:36:03 -08: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 09:17:58 +05:30
|
|
|
|
|
|
|
- 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`
|