반응형
정적 라이브러리 생성
ar 은 object파일을 하나의 파일로 만들어주는 정적 라이브러리를 만드는 명령어 이다
옵션은 다음과 같다.
-r : 추가
-c : 생성 ( 없으면 만든다 )
-s : index생성( object파일을 하나의 파일로 묶을때 순서를 정해주는것. 이것을 사용하지 않을시 내부적으로 명령어를 사용해야함)
-x : 추출 (어떤 라이브러리 안에서 특정 object파일만 추출 하고 싶을때 사용)
-d : 제거 ( 필요없는 object 파일을 제거)
-v : 결과를 화면에 보여줌
라이브러리로 만들때 주로 사용하는 옵션(rcsv)
라이브러리는 li를 접두어로 만들준다
.a가(정적 라이브러리)
<예제>
one.o two.o object 파일을 사용하여 libmynumber.a 정적 라이브러리 파일 생성 및 확인
라이브러리를 사용하여 컴파일
동적 라이브러리 생성
gcc 합치고자하는 소스파일들 -fPIC -shared -o 만들고자 하는 파일명.so
확장자는 .so(동적 라이브러리)를 사용한다.
중요한것은 동적라이브러리를 생성 후 /lib에 넣어 주어야한다.
<예제>
one.c 와 two.c 두개의 파일을 libyounumber.so 동적 라이브러리로 만들어준다.
생성된 동적 라이브러리로 test1파일을 만들엇고 아무런 에러가 없다. 하지말 실행시에 에러가 나게된다.
동적라이브러리 이기에 규칙에 맞게 /lib 디렉토리로 이동해주어야 한다. 다음 그림은 이동 후 정상적인 실행 장면을 보여준다.
반응형