gcc 옵션 정리

평소에 즐겨쓰던 컴파일러인 gcc의 옵션 정리를 해봤다. 매번 책을 참고 하기는 좀 그렇고 해서 책의 부록에 나온 부분을 정리해 보았다. 물론 이 정리 부분은 추후에 추가되거나 보완될수 있다.

참고한 책은 (유닉스, 리눅스 프로그래밍) 필수 유틸리티 : vi, make, gcc, gdb, cvs, rpm 이라는 책이다.

빌린 책이라서 이렇게 정리를 해봤다. 저작권에 위배가 된다면 지우겠다. [#M_ 옵션정리 보기 | 글 닫기 |

gcc 옵션정리

gcc 전역 옵션

옵션

설명

-E

전처리 과정 화면에 출력

-S

어셈블리 파일 생성

-c

오브젝트 파일 생성

-v

컴파일 과정 화면에 출력

–save-temps

컴파일시 생성되는 중간 파일 저장

-da

컴파일 과정에서 생성되는 중간 코드 생성(RTL파일 등 생성)

전처리기(cpp0)옵션

옵션

설명

-I[패스]

헤더 파일을 탐색할 디렉토리 지정 ex_ -I/opt/include

-include [헤더 파일 패스]

해당 헤더 파일을 모든 소스 내 추가 ex_ -include /root/my.h

-D[매크로]

외부에서 #define 지정 ex_ -DDEBUG

-D[매크로]=[매크로 값]

외부에서 해당 매크로를 정의하고 값을 지정 ex_ -DDEBUG=1

-U[매크로]

외부에서 #undef 지정 ex_ -UDEBUG

-M 또는 -MM

make 기술파일을 위한 소스 파일의 종속 항목 출력

-nostdinc

표준 C 헤더 파일을 include 하지 않음

-C

전처리 과정에서 주석을 제거하지 않음

-Wp,[옵션 리스트]

옵션 리스트를 전처리기에 바로 전달

C 컴파일러(cc1) 옵션

– C언어 옵션

옵션

설명

-ansi

ANSI C 문법으로 문법 검사

-std=


지정한 C 표준으로 문법검사(표준:c89, c99, gnu89, gnu99 )

-traditional

K&R C 문법으로 문법 검사

-fno-asm

asm, inline, typeof 키워드를 사용하지 않음

경고옵션

옵션

설명

-Wall -W

모든 경고 메시지 출력

-w

모든 경고 메시지 제거

-Werror

모든 경고를 오류로 취급하여 컴파일 중단

-pedantic

C89 표준에서 요구하는 모든 경고 메시지를 표시

-pedantic-error

C89 표준에서 요구하는 모든 오류 메시지를 표시

-Wtraditional

ANSI CK&R C 간에 서로 다른 결과를 가져올수 있는 부분이 있다면 경고

최적화 옵션

옵션

설명

-O0

아무런 최적화를 수행치 않음

-O1 또는 -O

최적화 레벨 1수행

-O2

최적화 레벨 2 수행

-O3

최적화 레벨 3 수행

-Os

사이즈 최적화 수행

디버깅 옵션

옵션

설명

-g

바이너리 파일에 디버깅 정보 삽입

-pg

프로파일을 위한 코드 삽입

출처 : (유닉스, 리눅스 프로그래밍) 필수 유틸리티 : vi, make, gcc, gdb, cvs, rpm

정리 : http://gogamza.egloos.com

_M#]

CC BY-NC 4.0 gcc 옵션 정리 by from __future__ import dream is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.