gcc -o записывает выходные данные сборкив выходной файл.
gcc -O устанавливает уровень оптимизации компилятора .
Запишите выходные данные сборки в выходной файл.
$ gcc [options] [source files] [object files] -o output file
мой файл.с:
// myfile.c
#include <stdio.h>
void main()
{
printf("Program run\n");
}
Соберите myfile.c на терминале и запустите выходной файл myfile :
$ gcc myfile.c -o myfile
$ ./myfile
Program run
$
Установите уровень оптимизации компилятора.
вариант | уровень оптимизации | время исполнения | размер кода | использование памяти | время компиляции |
---|---|---|---|---|---|
-О0 | оптимизация времени компиляции (по умолчанию) | + | + | - | - |
-О1 или -О | оптимизация размера кода и времени выполнения | - | - | + | + |
-О2 | оптимизация больше для размера кода и времени выполнения | -- | + | ++ | |
-О3 | оптимизация больше для размера кода и времени выполнения | --- | + | +++ | |
-Операционные системы | оптимизация по размеру кода | -- | ++ | ||
-Офаст | O3 с быстрыми не точными математическими вычислениями | --- | + | +++ |
+увеличить ++увеличить еще +++увеличить еще больше -уменьшить --уменьшить больше ---уменьшить еще больше
$ gcc -Olevel [options] [source files] [object files] [-o output file]
мой файл.с:
// myfile.c
#include <stdio.h>
void main()
{
printf("Program run\n");
}
Соберите myfile.c на терминале и запустите выходной файл myfile :
$ gcc -O myfile.c -o myfile
$ ./myfile
Program run
$