IT


소스( .c) → 전처리 (.i) → 컴파일(.s) → 어셈블러(.o or .obj) → 링크/링킹 → 실행파일 (.exe)
                   Preprocessing → Compile → Assembler → Link
※ 밑줄 부분은 컴파일 과정에서 중간 파일이 생겼다가 지워진다.

중간 파일을 삭제하지 않고 보여주는 방법.
# gcc -v --save-temps -o test2 first.c

-v → 컴파일 과정을 화면에 출력한다.
--save-temps → 컴파일 과정에서 생성되는 중간 파일인 전처리 파일(*.i)과 어셈블리 파일(*.s)를 지우지 않고 현재 디렉토리에 저장한다. 컴파일 과정의 에러를 분석할 때 사용

cl /P /FA main.c

1. 전처리 (abc.i 파일 생성)
#define, #ifdef, #include,#pragma 등, 전처리기 사용

$cpp abc.c abc.i

2. 컴파일 (abc.s 어셈블러 파일 생성)
c 컴파일러사용

$/usr/lib/gcc/i486-linux-gnu/4.0.2/cc1 abc.i

3. 목적코드 생성( abc.o 오브젝트 파일 생성)
어셈블러를 사용하여 목적파일 생성

$as -V -Qy -o abc.o abc.s

4. 링크(실행파일 생성)
링커를 사용-Collect2
두 개 이상의 목적 프로그램을 합쳐서 실행 가능한 한 개의 프로그램으로 만드는 작업

'소프트웨어 > C언어' 카테고리의 다른 글

문자 입출력  (0) 2011.05.03
변수와 메모리  (0) 2011.04.29
자료형-2  (0) 2011.04.28
자료형-1  (0) 2011.04.27
2011.04.27 피보나치 수열의 합 계산 프로그램  (0) 2011.04.27
Posted by sinpk