본문 바로가기

보안공부/Linux

정적,동적 라이브러리 생성

반응형

정적 라이브러리 생성

 

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 디렉토리로 이동해주어야 한다. 다음 그림은 이동 후 정상적인 실행 장면을 보여준다.

 

 

 

반응형

'보안공부 > Linux' 카테고리의 다른 글

lsmod  (0) 2016.04.18
File I/O  (0) 2016.04.11
Makefile  (0) 2016.04.04
gcc 컴파일  (0) 2016.04.04
학교수업(스마트모바일설계)  (0) 2016.03.28