본문 바로가기

SYSTEM

공유 라이브러리 생성

728x90
반응형

공유 라이브러리를 생성하는 법도.. 일주일은 삽질했던 것 같다 그래도 감 잡고나서는 실수 없이 빠르게 만들었다!

<공유 라이브러리 실습>

1) 소스 코드인 c파일 생성

~$ vi test.c

 

2) 소스코드를 오브젝트 파일로 바꿔줌

 -$ gcc -c test.c

Ls를 하면 test.o 라는 오브젝트 파일이 생긴 것을 확인

 

3) 오브젝트 파일을 .so 형식인 공유 라이브러리로 바꿔줌

 -$ gcc -shared -o libtest.so test.o

-o 뒤의 인자는 반드시 lib”소스코드이름”.so 형태여야함 

실행파일인 초록색을 나타내는 libtest.so가 생겼음을 확인

 

 

4) LD_LIBRARY_PATH 를 이용해 라이브러리 경로를 추가함 

~$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/minyeong3

 

5) sum.c 라는 이름의 소스코드 컴파일 

이때 맨처음에 만든 소스코드 속 add 함수를 포함해서 코드 작성

 

6) 파일 컴파일 

-$ gcc -o sum sum.c -l file1 -L .​

-ㅣ 옵션은 컴파일시에 포함할 동적 라이브러리 이름, - L 옵션은 경로를 지정

 

7) 파일 실행 

~$ ./sum

실행파일인 초록색을 나타내는 sum이 생겼음을 확인.

728x90
반응형

'SYSTEM' 카테고리의 다른 글

가상 메모리와 물리 메모리  (0) 2023.01.03
커널영역, 유저영역 차이  (0) 2023.01.03
함수 프롤로그, 에필로그  (0) 2022.12.30
리눅스 특수권한 조사, 실습  (0) 2022.12.30
함수 호출 규약 (Calling Convention)  (1) 2022.12.12