본문 바로가기
Engineering/Tip & Tech

정적 라이브러리 만들고 써먹기(on Linux)

by 알 수 없는 사용자 2008. 3. 14.
다음과 같은 binary search를 하는 함수가 있다고 하자.


위의 함수를 라이브러리로 만들어서 아래의 파일에서 링킹을 시켜서 써먹어보자.


요놈의 오브젝트 파일을 생성하고
gcc -c binary_search.c
라이브러리 파일을 만든다.
ar r libmylib.a binary_search.o
단 라이브러리 파일을 만들 때, 파일의 이름은 무조건 lib가 되어야 하고 확장자는 .a가 되어야 한다.

테스트 코드를 만들어 컴파일 한다. 단 라이브러리 이름을 넣을 때 앞에 lib와 뒤에 확장자.a는 없애고 라이브러리 파일이 위치한 경로를 명시해준다. 기본 경로는 시스템마다 다르겠지만 보통 /usr/bin인가 아마 그럴 것이다.
gcc test.c -lmylib -L./

실행
./a.out

사용자 삽입 이미지