본문 바로가기

도구의발견

gcc 라이브러리 만들기와 사용

1. 라이브러리 파일 만들기

리눅스 상에서 GCC컴파일러를 이용해 라이브러리를 만드려면 다음과 같은 컴파일 과정을 통해서 오브젝트 파일을 생성한다.

$ gcc -c filename.c (.cpp 파일을 컴파일 할 경우 g++ -c filename.cpp)

 참고 : (GCC 옵션 보기) http://kukuta.tistory.com/51

컴파일이 제대로 끝났다면 확장자가 .o인 filename.o파일이 만들어 질것이다. 이번에는 생성된 오브젝트 파일을 이용하여 라이브러리를 만들도록 한다.

이 때 사용하는 명령어는 "ar"로 라이브러리 작성에 사용된다. 아래와 같이 ar옵션 그리고 생성하고자 하는 라이브러리의 이름, 마지막으로 오브젝트 파일들의 이름을 나열한후 실행 한다.

(※ 윈도우에서 라이브러리 파일의 확장자는 .lib이지만 리눅스에서는 .a확장자를 지닌다.)

$ ar crv libfile.a filename.o

2. 라이브러리 파일의 사용

라이브러리 파일을 이용하여 실행 파일을 만들때 컴파일러의 옵션을 이용하는 방법이 있다. 이때 사용되는 옵션이 '-L' 과 '-l' 인데, -L의 경우에는 사용하고자 하는 라이브러리가 포함된 디렉토리 명을 명시하는 옵션이고, -l은 라이브러리의 이름을 적어주는 옵션이다. 이때 라이브러리의 이름은 lib라는 말과 확장자 .a를 생략하여 사용할수 있다. 즉, libfile.a의 경우 그냥 file이라고 쓰면 된다.

$ gcc -o executefile uselib.c -L. -l file

이때 만일 라이브러리 파일이 /home/user 디렉토리 밑에 있다면 -L 옵션을 다음과 같이 주면 된다.

-L /home/user

출처 : 이것이 C++이다 : 영진 닷컴 : 신재호

유익한 글이었다면 공감(❤) 버튼 꾹!! 추가 문의 사항은 댓글로!!