01. 링킹의 기본 이해

Language/C 2011. 9. 8. 12:16

링킹 과정은 컴파일과 링킹에서 마지막 과정으로 조각난 오브젝트 파일들을 하나의 바이너리 이미지로 합치는 과정

 

|| 링킹과정 절차

main.c

funcs.c

#include <stdio.h>

void func1();
void func2();

int var1 = 0x11111111;
int var2;
int var3 = 0;

int main(){
        static int var4 = 0x22222222;
        static int var5;
        int var6;

        printf("This is main() function()!\n");
        func1();
        func2();

        return 0;
}

#include <stdio.h>

extern int var1, var2;
int var8 = 0x33333333;
const int var9 = 0x12345678;
int var10;

void func1(){
        printf("func1() call\n");
        printf("var1 = 0x%X, var2 = 0x%X\n", var1, var2);
}
void func2(){
        printf("func2 call\n");
}

 

$ gcc -o test main.c funcs.c -v -save-temps

출처:

http://www.oneone.kr/?mid=UnixPUtil&page=1&document_srl=5700

 

: