Does g++ work without gcc?

前端 未结 1 1301
心在旅途
心在旅途 2021-01-29 13:49

Does G++ compile without GCC or G++ is just translator // Including old g++ version.

when i was trying to install g++ from source i saw file

gcc.c

相关标签:
1条回答
  • 2021-01-29 14:42

    With a recent GCC, gcc (actually cc1 which is run by gcc) and g++ (actually cc1plus) -and so on for other GCC compilers, e.g. gfortran or even gdc ....- share a lot of (source) code together: the middle-end (where most optimizations happen) and the back-end. The difference is only the front-end layer of the compiler (the only layer being source language specific) which is less than 30% of the compiler.

    You could customize the GCC compiler with plugins or with MELT. Your extensions would work on GCC internal representations (Gimple-s) and would work when compiling C, C++, Ada, Fortran, etc... Remember that GCC means Gnu Compiler Collection today

    Actually the gcc program is able to compile C++ source code (and likewise g++ can compile C or Fortran code). However, they are not linking the same libraries.

    Pass the -v flag to the gcc or g++ command to understand what they are running.


    Here are two (mine) [CC-BY-SA] pictures -explaing GCC & MELT- illustrating this.

    The three layers -front-end, middle-end, back-end- of the compiler:

    with your plugin, or the MELT meta-plugin

    Three layers of GCC

    with a simplification: cc1 or cc1plus are generating assembler files, which is then translated by as started by gcc or g++

    and

    another view of the internals of cc1 or cc1plus,

    which generates some assembler code

    view of <code>cc1</code> or <code>cc1plus</code>

    0 讨论(0)
提交回复
热议问题