\documentstyle[a4wide]{harticle}

\begin{document}
\title{{\tt cc} 명령의 옵션 요약}
\author{권범준 \\ System Programmers Association for Researching Computer Systems}
\maketitle

% 아래는 별로 쓰이지 않거나 sun2, 3, 4에만 국한된 것들입니다.
%
% -align X              Page align and pad symbol X (for ld)
% -assert X             Specify link time assertion
% -AX                   Obsolete. Use "-Qoption as X".
% -cb                   Collect information for code browser
% -dalign               Assume that all double-prec f.p. values are doubleword aligned.
% -dryrun               Show but do not execute the cmds constructed by the driver
% -f68881               Sets value of floating point option to -f68881
% -ffpa                 Sets value of floating point option to -ffpa
% -fsky                 Sets value of floating point option to -fsky
% -fsoft                Sets value of floating point option to -fsoft
% -fstore               Force assignments to write to memory
% -fswitch              Sets value of floating point option to -fswitch
% -fsingle2             Pass float values as float not double
% -fsingle              Use single precision arithmetic when 'float' only
% -J                    Generate long offsets for switch/case statements
% -misalign             Handle misalinged Sun-4 data w/pessimistic code
% -noc2                 Don't do peephole optimization, even if -O is used
% -purecross            Pure cross-compilation; use no files from /
% -pic                  Generate pic code with short offset
% -PIC                  Generate pic code with long offset
% -Qoption iropt X      Pass option X on to program iropt
% -Qoption cg X         Pass option X on to program cg
% -Qoption c2 X         Pass option X on to program c2
% -Qoption asS X        Pass option X on to program asS
% -Qpath X              Look for compiler passes in directory X first
% -R                    Merge data segment into text segment (for as)
% -sun2                 Generate code for a Sun2 system
% -sun3x                Generate code for a Sun3x system
% -sun386               Generate code for a Sun386 system
% -sun3                 Generate code for a Sun3 system
% -sun4c                Generate code for a Sun4c system
% -sun4                 Generate code for a Sun4 system
% -sb                   Collect information for code browser
% -v                    Report which programs the driver invokes

\begin{center}
\begin{tabular}{|l|l|}
\hline
\multicolumn{1}{|c|} {\bf 옵션} & \multicolumn{1}{c|} {\bf 요약 설명} \\
\hline
{\tt -a}                        &  각 블럭이 실행되는 횟수를 셀 준비를 한다. \\
{\tt -B}{\em X}                 &  라이브러리 바인딩 방법을 정한다. (정적, 동적 바인딩) \\
{\tt -c}                        &  {\tt ld}를 실행하지 않고 {\tt .o} 화일만 만든다. \\
{\tt -C}                        &  {\tt cpp}를 실행하면서 주석은 지우지 않는다. \\
{\tt -D}{\em X}[{\tt =}{\em Y}] &  {\tt cpp} 기호 {\em X}를 정의한다. {\em Y} 값을 지정하지 않으면 1로 지정된다. \\
{\tt -E}                        &  {\tt cpp}만 실행하고 그 결과를 출력한다. \\
{\tt -go}                       &  {\tt adb}를 위한 추가 정보를 생성한다. {\tt -O -R} 옵션은 취소된다. \\
{\tt -g}                        &  {\tt dbx}를 위한 추가 정보를 생성한다. {\tt -O -R} 옵션은 취소된다. \\
{\tt -help}                     &  {\tt cc} 명령의 옵션과 화일에 관한 짤막한 설명을 출력한다. \\
{\tt -I}{\em X}                 &  {\tt cpp}의 {\tt \#include} 화일들이 들어있는 디렉토리 리스트에 {\em X}를 추가한다. \\
{\tt -l}{\em X}                 &  라이브러리 {\em X}를 같이 링크한다. ({\tt ld} 실행시) \\
{\tt -L}{\em X}                 &  {\tt ld} 라이브러리 디렉토리 리스트에 {\em X}를 추가한다. \\
{\tt -M}                        &  {\tt cpp}만 실행해서 makefile을 만드는데 필요한 정보를 출력한다. \\
{\tt -o }{\em file}             &  출력 화일의 이름을 정한다. \\
{\tt -O}[{\em n}]               &  컴파일 결과를 최적화 한다. 최적화 단계는 1부터 4까지 지정할 수 있다. \\
{\tt -pipe}                     &  각각의 컴파일 과정에서 임시 화일 대신 파이프를 쓴다. \\
{\tt -pg}                       &  {\tt gprof} 를 실행하기 위한 자료를 준비한다. \\
{\tt -p}                        &  {\tt prof} 를 실행하기 위한 자료를 준비한다. \\
{\tt -P}                        &  {\tt cpp} 만 실행하고 그 결과는 {\tt .i}로 끝나는 화일에 출력한다. \\
{\tt -Qoption cpp} {\em X}      &  {\tt cpp} 프로그램에 옵션 {\em X}를 넘겨 준다. \\
{\tt -Qoption ccom} {\em X}     &  {\tt ccom} 프로그램에 옵션 {\em X}를 넘겨 준다. \\
{\tt -Qoption inline} {\em X}   &  {\tt inline} 프로그램에 옵션 {\em X}를 넘겨 준다. \\
{\tt -Qoption as} {\em X}       &  {\tt as} 프로그램에 옵션 {\em X}를 넘겨 준다. \\
{\tt -Qoption ld} {\em X}       &  {\tt ld} 프로그램에 옵션 {\em X}를 넘겨 준다. \\
{\tt -Qproduce .c}              &  {\tt .c} 화일(C 원시 화일)을 생성한다. \\
{\tt -Qproduce .i}              &  {\tt .i} 화일({\tt cpp}이후의 C 원시 화일)을 생성한다. \\
{\tt -Qproduce .o}              &  {\tt .o} 화일(목적 화일)을 생성한다. \\
{\tt -Qproduce .s}              &  {\tt .s} 화일(어셈블리 원시 화일)을 생성한다. \\
{\tt -S}                        &  {\tt .s} 화일을 생성한다. {\tt as}는 실행하지 않는다. \\
{\tt -target} {\em arch-type}   &  컴파일시 생성되는 코드를 {\em arch-type}에 맞춘다. \\
{\tt -temp=}{\em dir}           &  컴파일시 쓰이는 임시 화일의 저장장소를 지정한다. \\
{\tt -time}                     &  각 컴파일 과정에서 소요되는 시간을 보여준다. \\
{\tt -U}{\em X}                 &  {\tt cpp} 기호 {\em X}가 초기에 설정된 것을 삭제한다. ({\tt -D} 옵션의 반대) \\
{\tt -w}                        &  경고(warning)를 출력하지 않는다. \\
\hline
\end{tabular}

\vspace{1cm}
{\gs \sf 이 문서는 UNIX 초보 프로그래머를 위해 SPARCS에서 작성되었습니다.}

\end{center}
\end{document}
