gcc -o는 빌드 출력 을 출력 파일에 씁니다.
gcc -O는 컴파일러의 최적화 수준을 설정합니다.
빌드 출력을 출력 파일에 씁니다.
$ gcc [options] [source files] [object files] -o output file
myfile.c:
// myfile.c
#include <stdio.h>
void main()
{
printf("Program run\n");
}
터미널에서 myfile.c 를 빌드 하고 출력 파일 myfile 을 실행합니다 .
$ gcc myfile.c -o myfile
$ ./myfile
Program run
$
컴파일러의 최적화 수준을 설정합니다.
옵션 | 최적화 수준 | 실행 시간 | 코드 크기 | 메모리 사용량 | 컴파일 시간 |
---|---|---|---|---|---|
-O0 | 컴파일 시간 최적화(기본값) | + | + | - | - |
-O1 또는 -O | 코드 크기 및 실행 시간 최적화 | - | - | + | + |
-O2 | 코드 크기 및 실행 시간에 대한 최적화 | -- | + | ++ | |
-O3 | 코드 크기 및 실행 시간에 대한 최적화 | --- | + | +++ | |
-오스 | 코드 크기 최적화 | -- | ++ | ||
-오빠스트 | 빠르고 정확하지 않은 수학 계산이 가능한 O3 | --- | + | +++ |
+증가 ++증가 +++더 증가 -감소 --감소 ---더 감소
$ gcc -Olevel [options] [source files] [object files] [-o output file]
myfile.c:
// myfile.c
#include <stdio.h>
void main()
{
printf("Program run\n");
}
터미널에서 myfile.c 를 빌드 하고 출력 파일 myfile 을 실행합니다 .
$ gcc -O myfile.c -o myfile
$ ./myfile
Program run
$