라이브러리 사용의 의미...?
글쓴이: 익명 사용자 / 작성시간: 수, 2002/09/04 - 10:11오전
예를 들어 libXXX.a라는 파일을 프로그램 할 때 사용한다고 하면, 여기서 그 라이브러리를 사용한다는 것이 어떤것을 의미하는 건가요?
그 libxxx.a라는 를 만들 때 사용된 .o파일들의 소스 파일(예를 들면 ~~~.cc)에 있는 함수같은 걸 가져다 쓸 수 있다는 건가요??
라이브러리르 사용해서 프로그램한다는 것의 진짜 의미를 알고 싶습니다~~
의미를 모르고 쓰려니 감을 전혀 못잡겠어요~ -_-;;;
도와주세요~~~!! )
Forums:
Re: 라이브러리 사용의 의미...?
libtest.a 라는 라이브러리를 만들어 봅시다.
int test()
{
return 9;
}
이렇게 test.c를 만들고 ar을 이용해서 라이브러리를 만듭니다.
(gcc -c test.c; ar rcs libtest.a test.o)
그러면 libtest.a 라는 라이브러리에는 int test() 라는 9를 리턴하는 함
수가 들어있는 것이죠.
다른 프로그램에서 이를 이용해 봅시다.
#include ...
int test();
int main()
{
int a;
a = test();
printf("a %d \n", a);
return 0;
}
이렇게 test1.c 라는 파일을 만들고 컴파일 할 때 링크를 합니다.
gcc -o test1 test1.c -L./ -ltest
(libtest.a가 해당 링크에 있다고 가정한겁니다.)
그런다음에 실행파일을 실행해 봅시다.
./test
a 9
라고 나옵니다.
물론, 컴파일 때 링크만 해주면 또다른 프로그램에서도 int test()를 사용
할 수 있습니다.
이렇게 라이브러리로 만드는 이유는 많이 사용하는 코드를 낭비 없이 하
나 만들어 놓고 여기저기서 가져다 쓸 수 있는 편리성 때문입니다.
감사합니다~ *^^*
정말 좋은 설명과 예제네요...
감사합니다~~~
댓글 달기