¿Qué quieres decir con compilación O2?
1 y -O0 indican que no hay optimización
2.-O1 es el valor predeterminado, que proporciona optimización de nivel básico
3.- O2 proporciona una optimización de código más avanzada que requerirá más tiempo de compilación;
4.-O3 proporciona el nivel más alto de optimización de código.
Un compilador es un programa que traduce "un lenguaje (normalmente un lenguaje de alto nivel)" a "otro lenguaje (normalmente un lenguaje de bajo nivel)". El flujo de trabajo principal de un compilador moderno: código fuente)→preprocesador)→compilador)→código objeto)→enlazador)→archivo ejecutable.
Los lenguajes informáticos avanzados facilitan a las personas la escritura, la lectura, la comunicación y el mantenimiento. El lenguaje de máquina puede ser interpretado y manipulado directamente por las computadoras. Un compilador toma como entrada un programa fuente en lenguaje ensamblador o de computadora de alto nivel y lo traduce a un programa equivalente en código de máquina en el lenguaje de destino. El código fuente es generalmente un lenguaje de alto nivel como Pascal, C, C++, Java, programación china o lenguaje ensamblador, mientras que el destino es un código objeto en lenguaje de máquina, a veces llamado código de máquina.