GCC stands for GNU Compiler Collections which is used to compile mainly C and C++ language. It can also be used to compile Objective C and Objective C++. The most important option required while compiling a source code file is the name of the source program, rest every argument is optional like a warning, debugging, linking libraries, object file, etc. The different options of GCC command allow the user to stop the compilation process at different stages.
g++ command is a GNU c++ compiler invocation command, which is used for preprocessing, compilation, assembly and linking of source code to generate an executable file. The different “options” of g++ command allow us to stop this process at the intermediate stage.
DIFFERENCE BETWEEN g++ & gcc
|g++ is used to compile C++ program.||gcc is used to compile C program.|
|g++ can compile any .c or .cpp files but they will be treated as C++ files only.||gcc can compile any .c or .cpp files but they will be treated as C and C++ respectively.|
|Command to compile C++ program through g++ is
g++ fileName.cpp -o binary
|command to compile C program through gcc is
g++ fileName.c -o binary
|Using g++ to link the object files, files automatically links in the std C++ libraries.||gcc does not do this.|
|g++ compiles with more predefined macros.||gcc compiles C++ files with more number of predefined macros. Some of them are #define __GXX_WEAK__ 1, #define __cplusplus 1, #define __DEPRECATED 1, etc|
Don’t stop now and take your learning to the next level. Learn all the important concepts of Data Structures and Algorithms with the help of the most trusted course: DSA Self Paced. Become industry ready at a student-friendly price.
- Difference between CD and DVD
- Difference between PCI-E and PCI-X
- Difference between PCI and PCI-X
- Difference between IBM DB2 and MS SQL
- Difference between LAN and MAN
- Difference between LAN and WAN
- Difference between MAN and WAN
- Difference between MP4 and MP3
- Difference between DVD-R and DVD-RW
- Difference Between DAS and SAN
- Difference between LED and LCD
- Web 1.0, Web 2.0 and Web 3.0 with their difference
- Difference between GSM and LTE
- Difference between C and C#
- Difference between ZIP and RAR
- Difference between 4G and 5G
- Difference between C and C++
- Difference between ADO and ADO.NET
- Difference between Tor and VPN
- Difference between 1G and 2G
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.